High resolution scanning of remote objects with fast sweeping laser beams and signal recovery by twitchy pixel array

ABSTRACT

A scanning light imaging device for continuously pseudo randomly scanning patterns of light in a beam onto a remote surface to achieve spatio-temporal super resolution for finding remotely located objects. The scanning light imaging device employs a scanner to project image beams of visible or non-visible light and/or tracer beams of non-visible light onto a remote surface or remote object to detect reflections. The device employs a light detector to sense at least the reflections of light from one or more of the image beams or the tracer beams incident on the remote surface or remote object. The device employs the sensed reflections of light beams to predict the trajectory of subsequent scanned beams in a pseudo random pattern and determine up to a six degrees of freedom position for the remote surface or remote object.

CROSS-REFERENCE TO RELATED APPLICATIONS

This Utility Patent Application is a Continuation of U.S. patentapplication Ser. No. 17/189,204 filed on Mar. 1, 2021, now U.S. Pat. No.11,372,320 issued on Jun. 28, 2022, which is based on previously filedU.S. Provisional Patent Application U.S. Ser. No. 63/100,040 filed onFeb. 27, 2020, the benefit of the filing date of which is hereby claimedunder 35 U.S.C. § 119(e) and § 120 and the contents of which are eachfurther incorporated in entirety by reference.

TECHNICAL FIELD

The present disclosure is directed to a scanning light imaging device ingeneral, and more particularly, to a device that employs observedreflection of light beams from a remote surface or object to determinephysical aspects of that surface and predict the subsequent position ofthe remote surface or object.

BACKGROUND

With the ubiquity of images that are available for display by anelectronic device, the capabilities of a particular electronic device'sdisplay have become a significant factor to users. These images caninclude, movies, videos, podcasts, television, pictures, cartoons,illustrations, graphics, tables, charts, presentations, and the like.Also, the quality, resolution, and type of display for images that canbe displayed by an electronic device is often the primary factor in auser's decision to purchase that particular electronic device. Forexample, users might prefer relatively low power projection displays formobile devices, such as mobile telephones, notebook computers, hand heldvideo game consoles, hand held movie players, personal digitalassistants (PDA), and the like. These low power projection displays caninclude, and backlit or non-backlit Liquid Crystal Displays (LCD).Further, other relatively low power emissive displays such as OrganicLight Emitting Diodes (OLED), are growing in popularity for mobiledevices. Also, the size of a display for a mobile device is oftenlimited to a relatively small area, i.e., displays that can easily fitin a hand or clothing pocket. The relatively small size of displays formany mobile devices can also limit their usability for someapplications.

Stationary electronic devices, such as personal computers, televisions,monitors, and video game consoles, often employ high power projectiondisplay technologies, such as Gas Plasma, Cathode Ray Tubes (CRT), LCD,DLPs (Digital Light Processor), and the like. Also, displays for theserelatively stationary electronic devices are often considerably largerthan those displays employed with mobile devices, e.g., projectiondisplays can be five feet across or more. However, the relatively largephysical size of the cabinetry associated with most displays employedwith stationary devices can be inconvenient and unattractive for manyusers, especially when the displays are not in use.

Front image projection devices can also be used to display images on aremote surface, e.g., a hanging screen of reflective fabric, or someother relatively vertical and reflective surface such as a wall. Also, avariety of different technologies are employed by front image projectiondevices, such as Digital Light Processors (DLP), Light Emitting Diodes(LED), Cathode Ray Tubes (CRT), Liquid Crystal Displays (LCD), LiquidCrystal on Silicon (LCoS), MicroElectroMechanicalSystems (MEMS)scanners, and the like. However, artifacts in reflections of beams oflight projected onto remote surfaces or remote objects and determining amulti-dimensional position of the remote surfaces and/or remote objectshave been difficult to compensate for, and often adversely affect thequality, resolution, and usability of reflections of these remotelyprojected beams of light.

BRIEF DESCRIPTION OF THE DRAWINGS

Non-limiting and non-exhaustive embodiments of the present invention aredescribed in reference to the following drawings. In the drawings, likereference numerals refer to like parts through all the various figuresunless otherwise explicit.

For a better understanding of the present disclosure, a reference willbe made to the following detailed description, which is to be read inassociation with the accompanying drawings, wherein:

FIG. 1 is a block diagram of one embodiment of a scanning light imagingdevice (LID);

FIG. 2 shows one embodiment of a client device that may be included in asystem implementing aspects of the invention;

FIG. 3 shows one embodiment of a LID control sub-system;

FIG. 4A shows one embodiment of light beam trajectories generated by aLID;

FIG. 4B shows an embodiment of one light beam trajectory with scannedand predicted trajectory portions;

FIG. 5 shows an embodiment of a LID depicting one image beam and tracerbeam point;

FIG. 6A shows an embodiment of an application of an LID with differentuser vantage points;

FIG. 6B shows an embodiment of an LID response to different viewingperspectives;

FIG. 6C shows an embodiment of a LID projection onto a tilted screen;

FIG. 7A shows an embodiment of a mobile device with an embedded LID;

FIG. 7B shows another embodiment of a mobile device with an embedded LIDand a head-mounted position sensor;

FIG. 8A shows a flow diagram of one embodiment of a high-level processof generating an image using a LID;

FIG. 8B shows a flow diagram of one embodiment of a detailed process ofgenerating an image with a LID;

FIG. 9A illustrates a light transmitter emitting a fast sweepingscanning beam (FSSB) sweeping in a field of view (FoV) and the sweepingbeam impinges on a left edge of a shape of a Vulnerable Road User (VRU);

FIG. 9B shows a light transmitter emitting a FSSB sweeping in a FoV andthe sweeping beam impinges on a right edge of a shape of a VRU;

FIG. 9C illustrates a dual perspective VRU detection system with tworeceivers and two sweeping beam scanning systems to detect at least oneedge of a VRU or other remote obstacles ahead of a vehicle;

FIG. 9D shows a vehicle outfitted with a VRU detection system detectingthe left and right contour points of a shape of a VRU immediately afterreflected photons arrive at the receivers of the system;

FIG. 9E illustrates an VRU detection system precisely and selectively“cropping out” a pixel from a high resolution image frame produced by acamera from a foreground object, such as a VRU;

FIG. 10A shows an index finger as it is swept across by a fast detectionspot beam from left to right and then in the reverse direction fromright to left;

FIG. 10B illustrates where an event is out of cadence, and it does notfit the expected time matching the observed pixel boundaries;

FIG. 10C shows larger surfaces that reveal the cadence of regularspacing of a pixel grid projected onto a relatively smooth flat surfaceat a distance as a fast scan beam arcs across field of view;

FIG. 11A illustrates a back reflected image projection of a laser beam'sspot sweeping across a remote surface crossing the FoV of the VRUdetection system;

FIG. 11B shows an enlarged detail of the trajectory of the laser beam'sspot which causes sequential events to occur in adjacent pixels;

FIG. 11C illustrates sequential events that occur at adjacent pixels ata characteristic cadence when the receiver is close to the transmitterand is invariant to distance;

FIG. 12A shows random noise events and true signal events occurringconcurrently across a twitchy pixel array; and

FIG. 12B illustrates a signature trajectory that is not as smooth when areceiver is offset from a transmitter in a VRU detection system, inaccordance with the invention. The scan direction is the progression ofthe spot due to the rotation of the beam, and the offset or disparitydirection is the movement of the spot due to variations in range withgreater disparity in the near field, for surface positions that arecloser, and lesser disparity for further positions. These two directionsare not the same and may be orthogonal.

DESCRIPTION OF THE EMBODIMENTS

The present disclosure will now be described more fully hereinafter withreference to the accompanying drawings, which form a part hereof, andwhich show, by way of illustration, specific exemplary embodiments bywhich the invention may be practiced. This invention may, however, beembodied in many different forms and should not be construed as limitedto the embodiments set forth herein; rather, these embodiments areprovided so that this disclosure will be thorough and complete, and willfully convey the scope of the invention to those skilled in the art.Among other things, the present invention may be embodied as methods ordevices. Accordingly, the present invention may take the form of anentirely hardware embodiment, an entirely software embodiment or anembodiment combining software and hardware aspects. The followingdetailed description is, therefore, not to be taken in a limiting sense.

Throughout the specification and claims, the following terms take themeanings explicitly associated herein, unless the context clearlydictates otherwise. The phrase “in one embodiment” as used herein doesnot necessarily refer to the same embodiment, though it may. As usedherein, the term “or” is an inclusive “or” operator, and is equivalentto the term “and/or,” unless the context clearly dictates otherwise. Theterm “based on” is not exclusive and allows for being based onadditional factors not described, unless the context clearly dictatesotherwise. In addition, throughout the specification, the meaning of“a,” “an,” and “the” include plural references. The meaning of “in”includes “in” and “on.”

The term “pseudorandom” as used herein, indicates a statistically randomprocess, which appears to be random as distinguished from a truly randomprocess, which lacks predictability. Pseudorandom processes may begenerated using some deterministic elements combined with somenon-repeating patterns. For example, a timestamp may be combined withthe changing contents of a predetermined memory location to generate apseudorandom number. Furthermore, this term as used herein, indicateslack of a predefined scanning organization, for example, an array ofpixels (picture elements), parallel scanlines, hatched scanlines, crosshatched scanlines, open lissajous pattern scanlines, or any otherarrangement or pattern having a temporal or spatial relationship betweenscanlines.

The term “twitchy pixel” or “binary pixel” as used herein, indicates apixel that presents a binary state, e.g., either one or zero, in thepresence or absence of photons. Further, the twitchy pixel can detectand indicate the exact moment of arrival of an individual photonimpinging on the twitchy pixel by an immediate change in its binarystate, e.g., from zero to one. In one or more embodiments, a SiliconPhoton Multiplier (SiPM) array may be employed to provide an array oftwitchy (binary) pixels. An individual SiPM pixel, is also known as a“Geiger mode APD” pixel that consists of a photodiode, across which astrong reverse bias voltage is applied. This “over bias voltage” isstrong enough to ensure that an arriving photon not only causes abreakdown of the photodiode's natural directional resistance to current,but is also so strong that when one of the first arriving photons freesup a valence electron in the semiconductor lattice, this first freedelectron, propelled by the strong local potential electric field force,rushes towards the positive photo diode junction, accelerates andthrough collisions within the lattice, causes other electrons to befreed setting up a chain reaction, resulting in a huge “avalanche” ofconduction band electrons. In this way, a single blue or otherwisesufficiently energetic photon impinging on the SiPM pixel may cause asmany as 200,000 electrons to “rush the gate”. “Energetic” photon energymay be construed as significantly greater than the semiconductor bandgap between the valence band and the conductive band. For example, ahighly energetic Blue 405 nm photon can 2.7 times or more of the energyrequired to jump across this bandgap. Thus, within as little as 100picoseconds of the arrival of the first photons, a strong spike ofcurrent can be detected and used as fast reporting signal.

By arranging arrays of Geiger mode pixels, accurate and immediateavalanches may be used to precisely track the progression of a spot oflight across the array, such as the trail of bubbles left by the rareoccurrence of elementary particles in a bubble chamber used in particlephysics. In this way, SiPM pixel arrays can have one of the highestphoton detection efficiency (PDE), lowest dark noise, fast high-gaindetection signal output with the lowest jitter which provide excellenttime precision. For example, some pseudo random scanning laser spottracking systems can employ such SiPM pixel arrays to track reflectedspots of light in real time with high precision.

The term “corresponding” as used herein, may indicate a one-to-one,one-to-many, or many-to-one mapping. For example, an image pixelcorresponding to a display position may indicate that the image pixelcorresponds to more than one display position, when adjacent displaypositions are resolvable at a higher resolution in comparison with theresolution of the image associated with the image pixel. In such a case,a single image pixel may be interpolated or resolved to cover more thanone display position, and thus, the single image pixel corresponds tomore that one display position and indicates a one-to-many mapping. Inanother case where the image pixels and the display positions havesubstantially equal resolutions, the correspondence there between can bea one-to-one mapping. Furthermore, if a plurality of adjacent pixelshave substantially equal values, they may be projected as a line to formthe image instead of a series of individual positions on a display.

Examples of such systems that provide for pseudorandom scanning of lightbeams include, but are not limited to, those disclosed in U.S. Pat. No.10,331,021 issued Jun. 25, 2019; U.S. Pat. No. 9,581,883 issued Feb. 28,2017; U.S. Pat. No. 8,696,141 issued Apr. 15, 2014; U.S. Pat. No.8,430,512 issued Apr. 30, 2013; U.S. Pat. No. 8,282,222 issued Oct. 9,2012; all of which are incorporated herein by reference in theirentirety.

The following briefly describes the embodiments of the invention toprovide a basic understanding of some aspects of the invention. Thisbrief description is not intended as an extensive overview. It is notintended to identify key or critical elements, or to delineate orotherwise narrow the scope. Its purpose is merely to present someconcepts in a simplified form as a prelude to the more detaileddescription that is presented later.

Briefly described, the invention is directed to a scanning light imagingdevice for determining a position of a remote surface and/or remoteobject. displaying an image onto a remote surface. The scanning lightimaging device employs a scanner to project image beams of visibleand/or non-visible light, or image beams and tracer beams of light ontoa remote surface/object, which reflects the projected beams of light. Inone or more embodiments, image beams and/or tracer beams may be a spotformed by just one or more photons of light projected unto a remotesurface and/or objects. Also, the image projection device may alsoemploy a light detector to sense at least the reflections of light fromthe spot beams incident on the remote surface. In one or moreembodiments, the scanning light imaging device employs the sensed tracerbeam light to predict the trajectory of subsequent image beams thatimpinge on the remote surface. Also, the image beams and tracer beamsthat form the reflections of spot beams can be projected onto the remotesurface/object in sweeping scans of one or more pseudo random patternsrather than a predefined pattern, such as an array or grid. In one ormore embodiments, the trajectory of the spot beams can be observed sothat a point of view of the reflections can be selected by, orautomatically adjusted for, a user.

Additionally, in at least one or more embodiments, the light detectorcan also sense the reflections of visible/non-visible spot beams oflight that form the reflections incident on the remote surface and/orobjects. And the scanning light imaging device can employ the sensedreflections of this light to effect adjustments to subsequent spot beamsscanned onto the remote surface and/or objects.

In one or more embodiments, the scanning light imaging device may beemployed to pseudo randomly project beams of visible light onto theremote surface/objects and also pseudo randomly project other tracerbeams of non-visible and/or visible light onto the same remotesurface/objects. These pulses can be generated by modulating the outputof light sources or shuttering the light detector of the reflected lightpulses from the remote surfaces/objects.

In one or more embodiments, the light from the image beam and the tracerbeam can be combined and projected onto the same location at the remotesurface/object, or they may be projected onto two adjacent locationswhere the distance between the two locations is predetermined. The imagebeam light may have a wavelength in the visible spectrum, and it mayalso have a wavelength in the non-visible spectrum. If visible light isemployed for tracer beams, the frequency of the light is typically sofast that the tracer beams are undetectable to the typical viewer. Also,if non-visible light is employed for the tracer beam pulses, the lightwavelength may be in one or more non-visible spectrums, e.g., infrared,ultraviolet, or the like.

Furthermore, in at least one embodiment, the scanning light imagingdevice enables one or more safety interlocks between the device and theremote surface. For example, a determination is made as to whether ornot the scanner is properly moving, and if not, the image beam andtracer beam are disabled until the scanner is properly moving again.Also, in at least one embodiment, if a excessively close object isdetected between the device and the projection of the beams of light onthe remote surface/object, the image beam and tracer beam may bedisabled, or reduced in power until the moving object is no longerpresent between the device and the remote surface/object. Alternatively,the moving object may become the new remote surface/object that thescanning light imaging device pseudo randomly scans and senses thereflected beams light that are used to determine a new position for thenew remote surface/object.

In at least one embodiment, the tracer beam non-visible light pulses areIR (Infra-Red) light that is projected by a scanner, such as anoscillating MEMS scanner, onto particular positions in a pseudorandomscanline trajectory that sweeps across the remote surface. A lightdetector, such as a camera, coupled with a processing unit, tracks thetracer beam light to obtain data for detecting N consecutive precedingpositions of the pseudorandom scanline trajectory and estimating thesubsequent consecutive M positions of the scanline trajectory withrespect to a current position of the remote surface/object. In one ormore embodiments, multiple component image beams of visible light, forexample, RGB (Red-Green-Blue) colors, may be modulated, based on acorresponding M pixels of an image in a memory (memory image), andcombined to create discrete combined image beam pulses. The combinedimage beam pulses are projected onto the remote surface/object at thesubsequent estimated positions after the current combined image beamposition. Furthermore, the reflections of the projected combined imagebeams incident on the remote surface/object, in addition to the tracerbeam, may be optionally detected and compared with informationpreviously stored in a memory. And based on that comparison, thesubsequent estimated positions of the projected image beams can beadjusted on subsequent pseudorandom sweeps, progressively, to improvethe projected image's sharpness, brightness, and color. The combinedimage beam may also include information about how a known reflectedimage of the remote surface/object is to be displayed to a user.

In one or more embodiments, analysis of reflections of pseudo randombeam patterns traced out by fast sweeping laser beams, may be employedby robots and other computational entities to “make sense out of aworld.” The image projection device and light detector may be employ thereflections of the pseudo random beams to quickly and efficientlyperceive and recognize (“classify”) living moving things (humans, petsand other animate objects) that robotic systems need to account for tosafely navigate and be useful beyond the confines of a safety cage in anautomated assembly line.

In one or more embodiments, super resolution of illuminated physicaldimensions and positions of remote surfaces and/or objects may beprovided with a high speed sweeping and sharply focused laser beam“spot” and tracking the spot's reflections arriving at individualsequential binary pixels that asynchronously self-report in real-time,e.g., an array of binary pixels may also be referred to as a “twitchypixel array ” that is formed with an SPiM pixel array.

In one or more embodiments, a highly preferential signal discovery isprovided by sorting true pixel events caused by the image beam'sreflections on a twitchy pixel array, triggering a known characteristicsweep pattern, and differentiating these events from false pixel eventse.g. caused by pixel dark noise” (e.g sensor noise caused by one or moreof thermal random electrons and EM interference) and/or by stray,ambient or spurious photons impinging on the twitchy pixel.

In one or more embodiments, substantially high (super) levels ofresolution may be provided by ultra-fast self-reporting binary (twitchy)pixels in an array, such as an SiPM pixel array, that may be used by alaser spot scanning device to observe when (accurate to the nanosecond)a first photon(s) of the scanning laser spot's reflection arrives atsuccessive pixels in the array. For example, if the scan time across thepixel array is 100 microseconds (e.g. when scanning at 10,000 lines persecond), and if the triggered pixel pixels along the trajectory areobserved with 1 nanosecond precision ( 1/100^(th) of the approximatetime interval of 100 ns elapsed between successive triggered pixelevents—the approx. time interval elapsed between avalanches caused bythe scanning spot's reflections imaged on to the sensor) then anestimate may be determined for the true instantaneous position of thebeam's spot on a remote surface, by interpolating the spot's positionfrom the spatio-temporal trajectory observed as a series of events inthe pixel array. In this way, the degree of super resolution can exceedby as much as 10 times the linear discrete resolution of the array.

In one or more embodiments, if 1000 columns of pixels span across a 50degree angular field of view (FOV), then each column has 0.05 degree ofview (view frustum 1/1000×50 degrees). Also, by tracking the time ofarrival at individual pixels with nanosecond precision of the scanningspot reflections focused onto the sensor's pixel grid, then an estimatemay be determined based at least in part on the beam's instantaneousposition as a function of time to well beyond 0.005 degree angularresolution. Hence 10,000 positions or “10K” resolution, as 10,000×0.005degrees equals the FOV's 50 degrees width.

For hundreds of millions of users using billions of computing devices,the availability of a physically small, low-power, high-quality, highreliability, high resolution scanned imaging system with few or novisual artifacts may provide a significant advantage. These advantagesmay be particularly significant for devices where both the physicalsize, the image rendering speed and latency and resolution of theimaging systems is critical, such as augmented reality head mounteddisplays (AR-HMDs). With a small, low-power, built-in pico projectors,such small computing devices can display information, effectively, invery high-resolution, without the physical size and high powerconsumption rate normally associated with a conventional pixelated andframe by frame rendering display systems.

Power efficiency is also very important, particularly for small personaldevices, because of the limited battery life with daily use. Efficientprojection of light with limited use of filters, polarizers, and thelike, reduces overall power consumption, while providing a high qualitydisplay. The mixing of light falls into at least two general categories:additive mixing and subtractive mixing. In additive mixing, componentlight signals are combined with each other. In subtractive mixing, somelight frequency components are filtered out, transmissively orreflectively, or subtracted from the original whole. Some of theconventional display technologies, such as LCD and DLP, use subtractivemixing as a basic part of their operation. Subtractive mixing of lightbeams is generally wasteful of energy because light (photons) is firstgenerated and then partially blocked (subtracted), wasting the alreadygenerated light. Subtractive mixing is used to increase image brightnessand enhance contrast between the brightest and darkest pixels. Indisplay systems eventually utilized for displaying the image, resultingin poor overall efficiency.

Another important aspect of a display technology is reliability. Withfew moving parts, low power consumption, and low heat generation,reliability of invention may be generally greater compared to otherdisplay technologies having similar quality.

The feedback aspects, for both tracer pulses and image beam, of theinvention enables uses in applications that are not possible, or aremore difficult to realize, with other technologies to display images onremote surfaces and also detect multi-dimensional positions of remotesurfaces and/or objects that may be stationary or moving. For example,the invention allows automatic adjustment of a display in real-timebased on a perspective/position of the viewer/user. The user may movearound a remote display screen while the invention automatically adjuststhe displayed image to provide the appropriate perspective as viewedfrom each new position of the user with respect to the direction ofprojection onto the screen. This feature may have uses in immersiveapplications, such as video games. A variation of this capability isthat the projected image may be displayed on an un-even surface of ascreen, such as a textured wall, fabric, or other background withtexture or curvatures that would otherwise distort the projected image.These features are more fully described below with respect to FIGS. 3-7.

Even though various embodiments refer to the RGB color space, othercolor spaces may also be used. For example, YIQ, YUV, YCbCr, and thelike, color spaces may also be used to provide an image for projection.Similarly, more than three basic colors may be used. For example, inaddition to the Red Green Blue color sources, other emissive spectralcomponent color sources may be used, such as an Orange color source, forexample, in the wavelength range of 597 to 622 nano-meters (nm), aYellow color source, for example, in the wavelength range of 577 to 597nm, or a Violet color source, for example, in the wavelength range of380 to 455 nm. In this way, four or more component color sources may beused to project the image on a remote surface.

Generally, use of additional component colors may remove some tradeoffs,for example, the tradeoffs between efficiency, efficacy (characterizedas perceived lumens per watt), gamut (broadest color range), andfidelity, characterized by avoidance of perceptive artifacts, such asspatial, temporal, motion, or color artifacts. Such tradeoffs may haveto be made in both spatially rasterized and field-sequential colordisplay systems, like LCDs, having addressable display elements orpixels. The use of a greater number of coherent monochrome sources, suchas laser beams, reduce speckle that may be caused by self-interferencein the reflected beam of each component light beam. The greater numberof component light beams may reduce speckle because the component lightbeams are not coherent with respect to each other and may cancel out.

Multiple component light sources of substantially identical wavelengthmay also be used for added peak power, light efficiency, scanning, anddetection speeds. For example, multiple semiconductor light sources,such as LEDs and laser diodes, may be optically combined to generate abrighter and more efficient light beam. Speckle may be reduced due toreduced phase coherency in such “gang source” systems where multiplenear-identical wavelength component light sources are used.

Illustrative Operating Environment

Electronic displays for computing devices, such as workstations, desktopand laptop Personal Computers (PC), mobile devices like mobile phones,PDA's, and the like, as well as displays for entertainment-orienteddevices, such as televisions (TV), DVD players, and the like, may bereplaced or supplemented by scanning light imaging device (LID). In oneembodiment, the LID is an integral part of the computing orentertainment device. In another embodiment, the LID may be asupplemental device used in addition to, or in place of, a conventionaldisplay and/or detecting positions of remote surfaces/objects for avehicle navigation system or an augmented reality system.

One embodiment of a computing device usable with the LID is described inmore detail below in conjunction with FIG. 2. Briefly, however, thecomputing device may virtually be any stationary or mobile computingdevice capable of processing and displaying data and information. Suchdevices include mobile devices such as, cellular/mobile telephones,smart phones, display pagers, radio frequency (RF) devices, infrared(IR) devices, PDAs, handheld computers, laptop computers, wearablecomputers, tablet computers, mobile video game consoles, integrateddevices combining one or more of the preceding devices, or the like.Stationary computing devices may also include virtually any computingdevice that typically connects using a wired or wired communicationsmedium such as personal computers, video game consoles, multiprocessorsystems, microprocessor-based or programmable consumer electronics,network PCs, or the like.

Computing devices typically range widely in terms of capabilities andfeatures. For example, a mobile phone may have a numeric keypad and afew lines of an LCD or OLED display on which a small amount of text andgraphics may be displayed. In another example, a computing device mayhave a touch sensitive screen, a stylus, and a relatively large displayin which both text and graphics may be displayed.

A computing device may include a browser application that is configuredto send/receive and display web pages, web-based messages, or the like.The browser application may be configured to receive and displaygraphics, text, multimedia, or the like, employing virtually any webbased language, including a wireless application protocol messages(WAP), or the like. In one embodiment, the browser application isenabled to employ Handheld Device Markup Language (HDML), WirelessMarkup Language (WML), WMLScript, JavaScript, Standard GeneralizedMarkup Language (SMGL), HyperText Markup Language (HTML), eXtensibleMarkup Language (XML), or the like, to display and send information.

Communication media used with computing devices typically may enabletransmission of computer-readable instructions, data structures, programmodules, or other types of content, virtually without limit. By way ofexample, communication media includes wired media such as twisted pair,coaxial cable, fiber optics, wave guides, and other wired media andwireless media such as acoustic, RF, infrared, and other wireless media.

The display of images and/or video data using the LID is different fromthe display of the same images/video on more conventional displays.Conventional displays generally are arranged with some form of pixeladdressing in the display area. The pixel address may be specified bytiming, as in raster scanners like CRTs using horizontal and verticalblanking signals (H-sync and V-sync, respectively), or by row-columnaddress pairs like transistor/LED (Light Emitting Diode) arrays in LCDs.In conventional displays, the area of the display is generally quantizedas a fixed grid with equal sized tiles or spatial quanta, also referredto as pixels. In such display systems, the illusion of motion is createdby quantizing continuous time and space into discrete and equal time andspace quanta, also referred to as frames. Generally, a fixed frame rate,expressed as Frames Per Second (FPS) is used to record and play backmoving images. This quantization of time into frames, and image intopixels, introduce temporal and spatial artificial visual artifacts,respectively, during the display of moving images, such as jagged lines(spatial), aliasing (spatial and temporal), image blurring (temporal),judder (temporal), and the like, further described below.

These address-based pixel organizations are fundamentally different fromthe pseudo random scanning method used in an LID. The address-baseddisplays generally require a defined frame format with specific andrigid timing requirements, as is well known to one skilled in therelevant arts. For example, in a raster scanner, scanned lines(scanlines) are displayed in consecutive order, as parallel horizontallines, one after another from the top to the bottom of the screen. Incontrast, the MEMS scanner for the LID can oscillate and project lightin a pseudorandom pattern onto a remote surface, where the scanlines ofan image beam and/or a tracer beam are primarily traced out in adirection based on the image or spot beam to be projected, withoutrelying upon a particular spatial or temporal relationship with theprevious or the next scanline.

Conventional scan patterns, in terms of both timing and spatialregularity, digital sampling, and quantization in general create anumber of visual artifacts, such as jagged slant or diagonal lines,especially visible in low-resolution imaging systems, image blurring,motion blur (may occur because of a basic mismatch between continuoushuman vision and quantized digital imaging system), judder (defined assmall unnatural jerky movements in motion pictures, either in space orin time. In space, judder can be the result of consecutive film framesnot advanced precisely to the same position at the projector gate. Intime, judder in video may be noticed because 24 frames per second forfilm source does not divide evenly into 60 fields or frames per secondfor NTSC video, and some film frames' content is shown on the screen formore time than other frames' content), moirés (pattern resulting fromtwo grids that are superimposed over one another), screen door effects,aliasing, and the like. These artifacts results, in one way or another,from quantization and digital sampling.

However, since the LID is relatively analog in nature and in itsoperation as compared to conventional displays, does not depend onquantization, even though at some points through the process a LIDimplementation can process digital data. For example, reading an imagefrom memory to display may involve some digital processing, however,once the image is ready for projection using LID, the process is largelyanalog, as more fully described herein.

Another difference between the LID and conventional displays is trackingand feedback.

Conventional displays are feed-forward in their basic operation, sendingimage data in one direction: from the source of the image, for example,memory or DVD, to the destination, which is the display device.Generally, no feedback is needed for basic operation and no data is readback from the conventional display. In some implementations ofconventional display devices, the displayed image may be read back orsensed and compared with the source image to increase the quality of thedisplayed image. However, such feedback is for quality enhancement asopposed to being part of the basic operation of the conventional displaydevices. The display method used in LID may use feedback from the tracerbeam, for example, IR pulses, to determine the next screen position onthe scanline trajectory by trajectory prediction and/or estimation. Oncethe next screen position is so predicted, the memory image for thecorresponding screen position is obtained and used to modulate thecomponent image beams for combining and projecting onto the next screenposition.

Because the scanlines can be pseudorandom in the LID, generally, thetiming information (usually included in video frames) needed for displayof a video stream on a conventional display device, may not be neededfor display of the same video stream on the LID. In one embodiment, theactive video signal, the sequence of images to be displayed, that issent to a conventional display screen, may be stripped, in real-time,from the formatting information associated with the conventionaldisplays, such as H-sync and V-sync signals and/or other timinginformation, for display using LID. In another embodiment, the activevideo or other image to be displayed using LID may be generated for LIDor pre-stripped at the source of the video or image. In yet anotherembodiment, both of the above embodiments may be implemented bydynamically determining whether an image has display format informationor is pre-stripped. In still another embodiment, the timing informationincluded in video frames may be used to extract information that may beused to improve quality and/or perceived resolution. For example, aweighted average of multiple frames may be used to insert preciseinterpolated inter-frame pixel values that reduce unwanted visualartifacts.

Many graphics programs, such as video games and programs for 3-D (threeDimensional) manipulation of objects, may generate images with effectiveresolutions that are significantly beyond the resolutions that can bedisplayed by conventional display devices. Such high resolution graphicsgenerated by these graphics programs may specially benefit from aprojection system, such as the IPD, that is substantially free fromquantization effects and has very high effective resolution.

FIG. 1 is a block diagram of one embodiment of LID 100. This embodimentincludes a light source driver 102 for modulating component image beams,generated by light sources 104, and for controlling tracer beamgenerator 106. The component image beams are combined using a beamcombiner 108 that produces a combined image beam 120. The combined imagebeam is directed to a scanner 110, which pseudo randomly sweeps a scanof the combined image beam to screen 114, or another remotesurface/object. Combined image beam 120 includes information about aknown image to be displayed or may be a spot beam that projects photonssequentially in scanned patterns, or pseudo-randomly scannedspatio-temporal trajectories. The information about the known image isprojected sequentially (serially) onto screen 114 using the consecutiveprojected scanlines causing the known image to appear on screen 114 orat another remote surface/object that may be moving and/or stationary.The formation of the known image on the screen may take a fewmicroseconds or less.

Tracer beam 122 used for scanline trajectory prediction is also directedto scanner 110 and reflected to screen 114 or another remotesurface/object. Detector 112 is used to detect the reflection of thetracer beam off screen 114 or another remote surface/object. Detector112 sends timing to and screen position information [x, y] to processor116 coupled with memory 118 holding an image to be displayed on screen114 or reflected off another remote surface/object. Detector 112 canalso be used to optionally detect the reflection of the image beam offscreen 114 or another remote surface/object that may be stationary ormoving. Additionally, in at least one embodiment, a separate detector113 can be included to separately detect the reflection of the imagebeam off screen 114 or another remote surface/object. Furthermore, inone or more embodiments, information provided by detector 112 andseparate detector 113 may be employed to triangulate one or more of aposition of the other remote surface/object that is stationary ormoving. Processor 116 is also coupled with light source driver 102 tocontrol the modulation of component image beams, and generation oftracer beam 122 by tracer beam generator 106.

In one embodiment, component light sources 104 may include red, greenand blue (RGB) color components. In another embodiment, component lightsources 104 may include other color components such as orange, yellowand violet in addition to RGB. In one embodiment light sources 104 areLEDs (Light Emitting Diode), while in another embodiment, light sources104 are lasers. In yet another embodiment, light sources 104 are laserdiodes. Those skilled in the relevant arts will appreciate that manytypes of light sources may be used to generate component lights, such asred, green, and blue, and the like, without departing from the spirit ofthe disclosure.

Component light sources 104 produce component image light beams that arecombined by a beam combiner 108 to produce a combined image beam. In oneembodiment the beam combiner 108 is an optical device, such as a prism,dichroic mirrors, or the like. In another embodiment, the beam combiner108 is an electronic device that may be used to convert light componentsinto electrical signals, mix the electrical signals into a mixed signal,and convert the mixed signal back into a combined image beam. Anelectronic mixer may be used if intermediate processing of the lightbeam, such as digital or analog filtering or other control andprocessing, is desired.

In one embodiment, scanner 110 may be a MEMS device with a precisionbuilt mirror with at least a two-axis gimbal for independentlycontrolled rotation about two orthogonal axis. In this embodiment, themirror may sweep pseudo randomly scanlines that cover any screenposition on the surface of screen 114 or another remote surface/object.In another embodiment, scanner 110 may be a mirror with other types ofdirectional controls, such that a scanline may be projected on everyscreen position on screen 114 or another remote surface/object. Forexample, polar or cylindrical adjustments and corresponding controls maybe used to point the mirror to direct the reflection of image beam toany screen position on screen 114 or another remote surface/object.Because of the rotation of the mirror, a scanline projected on screen114 may have a slight curvature instead of being a straight line.Scanner 110 may work in a color sequential mode, where the image beamsequentially varies across multiple colors and the image isreconstructed by the viewer by virtue of time integration of the variouscolor values observed.

In another embodiment, that may be useful for highly mobile images, suchas movies, a multiple-color system may be implemented using multipleprimary colors simultaneously. The primary colors may be separated outby using a prism, dichroic beam splitters or dichroic mirrors, or byusing separate sub-pixels with color filters. In another embodiment, afull, broad-spectrum white source may be used for illumination, and thewhite beam may then be split into its color components which areseparately observed by multiple lines in a linear array sensor.

A particular scanline projected by the scanner 110 onto the screen 114is not aimed, in a feed-forward fashion, at any particular predeterminedposition (or curve, when referring to all points on the scanline) on thescreen 114. Rather, the scanline is pseudo randomly projected at alongsome arbitrary trajectories, fast sequences of adjacent positions on thescreen 114 and these trajectories and positions are observed anddetected by a detector, more fully described below. This feedbackarrangement is generally more precise and accurate than feed-forward,because the actual position of the projected scanline on the screen isdetermined, instead of a predicted feed-forward position, which may beoff due to many causes, such as vibration of the scanner 110 and/or thescreen 114 or another remote surface/object. Feedback inherently makesimage correction on the screen possible, for example, to counter screenimperfections and/or vibrations, because feedback is after-the-factobservation of an event (e.g., scanline position on the screen), ratherthan before-the-fact prediction and/or specification of the event, as isthe case in feed-forward systems. In one embodiment, screen 114 is atypical front projection screen with a high reflexive index. In anotherembodiment, screen 114 is a back projection screen with diffusetransmittance for passing light through. In this embodiment, the othercomponents shown in FIG. 1 are arranged to project the image onto theback of the screen to be viewed from front of the screen by a viewer. Inanother embodiment, screen 114 may be a light colored wall or any otherflat surface. In yet another embodiment, screen 114 may be any surfacewith or without texture, of any shape, curvature, surface roughness, 3Dshape or other irregularities. The feedback feature of PSTP 100 mayautomatically compensate for surface imperfections, texture, andirregularities of screen 114.

In one embodiment, detector 112 is a monochrome camera. The monochromecamera detects single colors, such as red, green, or blue. Monochromecameras may also detect IR light. A monochrome camera may be useful whenthe tracer beam 122 is a visible pulsed light beam. In this embodiment,the light beam pulses are of short enough duration that would beimperceptible to the human eye. In another embodiment, detector 112 maybe an IR detector used to detect pulses projected by the tracer beam122. In yet another embodiment, detector 112 may be a CCD (ChargeCoupled Device) or SiPM (Silicon Photo Multiplier) array. The CCD orSiPM array may be a single row CCD or SiPM array or it may be a twodimensional CCD or SiPM array.

In yet another embodiment, multiple single row CCD or SiPM arrays may beused. In this embodiment, a two-dimensional projected image is opticallycollapsed into two orthogonally related linear image components. Each ofthe two linear image components may be detected by a separate single rowCCD or SiPM array. This way, a target object on the projected image maybe detected and tracked. In the past, a camera system constructed fromspecially adapted optics and sensors—could be optimized to detect andtrack one or more target objects, for example, dots or small brightfeatures, in a broad field of view. With simple mirror optics a singlelinear array sensor is sufficient to detect both location and signalintensity of the dots in a 2D field with a minimum of computation.Positional observations can be made at very high speed with an accuracynot attainable with conventional camera systems. However, the LIDeliminates the trade-off between spatial resolution and shutter speed asobserved in existing array sensors.

In still another embodiments, if a singular target object, for example,a single screen position the light level of which exceeds a pixelthreshold of a detector array (for example, CCD or SiPM array), afolding optics arrangements may be used to superimpose a dimension Y(for example, vertical) of an image onto a dimension X (for example,horizontal) of the image so that information contained in bothdimensions may be measured and detected by a single linear CCD or SiPMarray. US Provisional Patent application, Ser. No. 61/002,402,referenced above and to which priority is claimed and incorporated byreference, discloses this arrangement. The folding optics arrangementmay be implemented using a mirror, a half-mirror (for beam splitting),or a reflecting prism, among other options. In one embodiment, pixels inthe detector 112 array may have the same associated threshold. Inanother embodiment, pixels in the detector 112 may have a differentassociated threshold based on certain criteria, for example, thecontrast expected in the image that will be displayed. In yet anotherembodiment, the pixel thresholds may be set dynamically based on certaincriteria, for example, the average darkness or brightness of the imageabout to be displayed. The dynamic setting of the pixel thresholds maybe performed during a calibration cycle of detector 112, where the pixelthreshold value is set to just below the brightest value observed in thedetector sensor array.

The folding optics embodiment of detector 112 enables out-of-orderreporting of screen positions exceeding the pixel threshold.Additionally, this embodiment enables dimensional superposition, as morefully described below. In one embodiment, each pixel in detector 112array may be set to a threshold. The threshold is set above the naturalnoise level, for example, the dark current of the electronicsimplementing the detector pixels. The threshold may also be set at ahigher level than the natural noise level, but below the expectedbrightness of the target object to be detected. This way, the brightestscreen position in the projected image exceeds the pixel threshold andtriggers detection of the surface position. Each pixel in the detector112 array has a predetermined address (pixel address) typicallycorresponding to a sequential count that can either be hard-wired orassigned during initialization of the scanned imaging system.

When a pixel in detector 112 array exceeds the threshold value, a pixel“hit” event, the address of the pixel is reported, for example toprocessor 116 (see FIG. 1), together with the measured light value forthe corresponding screen position. For example, the data that isreported to processor 116 may take the form of a 2-tuple [Address ofpixel N, Value of pixel N]. Either concurrently or afterwards, the pixelis reset, so the pixel is ready to detect the next event, for example,another surface position the brightness of which exceeds the pixelthreshold. All other pixels in detector 112 array are unaffected duringthe detection reset cycle and pixels in detector 112 array may operatefully asynchronously. Multiple pixel hit events may be detected at thesame time.

In this embodiment, no electronic or mechanical shutter may be neededfor detecting pixel hit events. The pixel thresholds and resettingtogether act as an effective shutter mechanism for detector 112 array.An effective shutter speed of a sensor (pixel) in detector 112 array isat most as slow as the reset time of any one pixel, typically on theorder of a few micro seconds or less. The shutter speed for thedetection of a pixel hit event, may generally be limited by thesensitivity of a pixel trigger circuit to detect a minimum amount ofcharge exceeding the preset threshold value (trigger). If the value tobe detected is a sufficiently bright strobe, the detection would benearly instantaneous. For example, an avalanche photo diode detectorbased pixel might require as few as 10 photons to detect a hit. Whenhigh speed beam detection is required, adjacent pixels in the detectorcorresponding to screen positions on the scanline, may be asynchronously(and typically time-sequentially) triggered, effectively causing thedetector to have little or no shutter speed limit. Furthermore, nearlysimultaneous observations of different pixel hit events may be pipelinedfor processing to calculate and predict the trajectory of the scanline.A precise reference clock may be used to time-stamp each pixel hit eventobservation for accurate trajectory calculations. Such a reference clockmay provide GHz (Giga Hertz; nano-second time resolution) time-stamps.

The surface position, brightness, and timestamp associated with a pixelhit even may be obtained asynchronously. Therefore, the timing of theobserved pixel hit events is independent of sampling speed, samplingintervals, or shutter speed of detector 112, thus, avoiding measurementerrors and quantization effects, which typically result in imageartifacts such as aliasing in traditional array sensors. Reducingquantization artifacts is an important architectural consideration. Inthe cases that the observed object has a known periodicity, clockaccuracy and motion accuracy can be derived independently from thesensor spatial resolution, reducing motion blur. In one embodiment, thetracer beam 122 (see FIG. 1) may be pulsed with a low duty cycle, on theorder of pico-seconds. Such low duty cycle IR pulses create ashort-duration bright flash and ensure that the screen position at whichthis bright flash appears do not spread across more than any twoadjacent pixels in detector 112 array, even when the scanline sweepvelocity may far exceed the spatial accuracy and shutter speed of aconventional camera.

In one embodiment, dimensional Superposition entails beam folding inaddition to “deconstructing” the image, e.g., optically reducing theimage dimensionally from a 2-D space, having an X- and a Y-dimension,into two or more 1-D spaces. In this embodiment an N×N image detectorarray may be reduced to a single N-pixel linear sensor array by “folding” and superimposing each of the two dimensions of the image onto onelinear array. A 2-D image beam may be collapsed into two 1-D lineararrays using one or more cylindrical lenses that split the 2-D imagebeam. Beam folding may be performed by guiding the image light exitingfrom a cylindrical lenses onto a single linear array by optical means,for example, using mirror(s), prism(s), grating(s), or waveguide(s). Inone embodiment, the single linear array may be a monochrome lineararray. In another embodiment, the 2-D image may be split, resulting intwo split image beams. One of the split beams may be rotated andrecombined with the other split image beam, so that one cylindrical lensand corresponding sensor array may be needed.

In this embodiment, a single surface position where the IR pulse isprojected on the surface, may result in two separate illuminated dots onthe linear array. One dot represents X-dimension and the other dotrepresents the Y-dimension of the surface position on the original 2-Dimage. Thus, the bit values (representing, for example, brightness) andaddresses of the two dots in the single linear array allow the spatialsurface position in the 2-D image, as well as the intensity and color ofthe 2-D image corresponding to the surface position be reconstructionrapidly and efficiently, as two values have to be read from the samesensor in the single linear array. This embodiment allows the scannedlaser imaging system to track a highly mobile bright objects in itsField of View (FoV) with N×N spatial resolution at a speed limited bythe pulse width (or period) of the tracer beam. In this case, theeffective resolution of the IPD is equivalent to speed x pulse period.In one embodiment, for accurate scanline trajectory calculations,multiple sequential readings can be made as described and the result canbe hyper-resolved by interpolation for scanline sweep segments withknown speed and smooth curvature. This way, the IPD's scanner mayachieve high resolution and great color depth, using a single monochromearray sensor.

In one embodiment, improved spatial color accuracy, for example, hue andluminance, may be independently achieved, using the same set of opticsand sensors. To detect the screen position accurately based on areflection of incident beams projected on the screen 114, a narrow bandfrequency light source may be used, in the form of a narrowly collimatedillumination beam that illuminates a very narrow spot, for example, anIR or UV beam. If all light beams have substantially the same frequency,the optics may be optimized or tuned for this frequency. A broadspectrum light source or a mix of multiple primary color components,representing the image to be displayed, may be superimposed andprojected onto the screen position to determine the hue and luminanceinformation of the reflected image beam. To enhance the sensitivity ofthe color measurements, and to allow for some blurring and coloraberrations inherent in using the broad spectrum light in the optics ofthe detector 112, values of multiple pixels in the single linear arraymay be combined. This may be possible because due to the lasercollimation accuracy, the image information may be generally centered onthe same location as the narrow beam location, which has been alreadydetermined.

In one embodiment, both the screen position and visible image colorcomponents may be read simultaneously by subtracting IR pulse value ofthe screen position from sum of the adjoining “lit-up” screen positions.In another embodiment, the periodic IR pulse may be used to determinethe precise scanline trajectory. The scanner may operate in colorspatial field sequential fashion, where for each color, location iscalculated by spatial interpolation based on the time-stamp associatedwith the screen position.

In one embodiment, processor 116 is a programmed microprocessor coupledto memory 118 containing the image to be displayed. As is well known tothose skilled in the art, embedded programs running on themicroprocessor may be used to perform appropriate signal processingusing processor 116. In one embodiment, processor 116 is a digitalsignal processor (DSP) with specialized instructions for processingsignal information. In another embodiment, processor 116 is a circuitfor performing hardware-based processing and calculations. In yetanother embodiment, processor 116 is a software component running on amicroprocessor or microcontroller running other applications as well.Those skilled in the art would appreciate that processor 116 may beimplemented using multiple processors, each processor performing aportion of the calculations needed.

In one embodiment, light source driver 102 is a circuit for modulatinglight sources 104 according to image control signals 124 output from theprocessor 116. Light source driver 102 may also process timinginformation is 126 to control tracer beam generator 106. In oneembodiment, light source driver 102 modulates light sources 104 andcontrols tracer beam generator 106. In another embodiment, light sourcedriver 102 may be implemented as two separate modules, one forcontrolling light sources 14 and one for controlling tracer beamgenerator 106.

Not all the components shown in FIG. 1 may be required to implement PSTP100 and variations in the arrangement and type of the components may bemade without departing from the spirit or scope of the disclosure. Forexample, light source driver 102 and processor 116 may be integratedinto one device. Conversely, light source driver 102 for modulatingcomponent light sources 104 may be a device that is distinct fromprocessor 116. Similarly, in various embodiments, detector 112 andscanner 110 may be integrated together or may be implemented as discretecomponents.

In operation, with continued reference to FIG. 1, scanner 110pseudo-randomly sweeps screen 114 with scanlines. In one embodiment, arandom number generator is used to generate at least a component used toperform pseudo-random sweeps for scanner 110. In another embodiment,physical features may be used in the structure of scanner 110 tointroduce pseudo-randomness in the sweep direction of the mirroremployed in scanner 110. For example, irregular mechanical features,optical features, electrical currents, magnetic fields, or thermalfluctuations may be used to introduce such randomness. As scanner 110sweeps across screen 114, the tracer beam 122 is reflected by scanner110 and projected onto screen 114. Subsequently, tracer beam 122 isreflected back by screen 114 and is detected by detector 112. In oneembodiment, tracer beam 122 is a pulsed IR beam. In another embodiment,tracer beam 122 is composed of short duration visible light pulses.Those skilled in the art will appreciate that a behavior pattern thatmay appear random at one level of detail may be deterministic at a moredetailed level. For example, a pseudorandom behavior pattern atmicro-second level of detail may be entirely deterministic at anano-second level of detail. For instance, regular events at nano-secondtime resolution, when combined into longer units of time, may give riseto higher level events that appear random.

Detector 112 determines the screen position as defined by a pulse fromtracer beam 122. Processor 116 predicts the subsequent screen positionsbased on the previous screen positions on the same scanline. Thesubsequent screen positions are used to obtain image pixel informationfrom memory 118 and display on the subsequent predicted screenpositions. In one embodiment, the image pixel information from memory oranother image source, such as a graphic engine, may correspond to one ormore screen positions. The image to be displayed may be a described as apolygonal element or continuously interpolated color mapping. Thisprocess may be continuously repeated for pulse after pulse.

For each detected pulse, the corresponding surface position informationis provided to processor 116 by detector 112. In one embodiment, thescreen position information may include raw data as collected bydetector 112, for example, an array index of detector 112. In thisembodiment, the raw data may be further processed by processor 116 tocalculate the [X, Y] coordinates of the detected beam of light. Inanother embodiment, the surface position information may include [X, Y]coordinates of the detected pulse, as determined by detector 112.Detector 112 may also provide time of detection, to, to processor 116.The time of transmission of the tracer beam from the tracer beamgenerator 106 to processor 116, the pulse “flight time,” may becalculated by subtracting the time of generation of the pulse from thetime of detection of the pulse. The pulse flight time may be used toestimate the distance of the particular point on screen 114 where thepulse was detected to scanner 110. Knowing this distance enablesprocessor 116 to adjust the brightness and modulation of the componentimage beams, and tracer beam pulse frequency to compensate for a roughor irregular surface of screen 114 or another remote surface/object thatmay be stationary or moving.

In one embodiment, successive screen positions traversed by thepseudorandom scanlines, used to project combined image beam 120 ontoscreen 114, are looked up by high speed processor 116 in a memoryreference table and the color values of the image to be displayedcorresponding to the screen positions are rendered on the screenpositions nearly instantaneously. Hardware graphics processors can lookup such color values and any related computations at multiples of GHz(Giga Hertz, a billion cycles/second) clock speeds. Thus, pixel colorvalues, typically specified as 24, 32 or 48 bit color vectors, can becomputed billions of times per second, with a latency of about a fewnano seconds (billionths of a second). This rate of processing is morethan sufficient to render the equivalent of 30 frames of two millionpixels each second (60 million vectors per second). Thus, suchcomputational speeds are more than sufficient for LID 100 to render HDTV(High Definition TV) quality video.

In one embodiment, the projection and detection functions describedabove may be alternated on a small time scale, for example, on the orderof a few nano-seconds. In this embodiment, in a first phase, aprojection cycle is performed projecting a portion of a scanline on thescreen, while a detection cycle stands by. In a second phase, thedetection cycle starts while the projection cycle stands by. The firstand second phases may be performed on a single or a few screenpositions. In another embodiment, the projection and detection functionsmay operate simultaneously. For example, two sliding windows overlappingin time may be used to simultaneously project and detect multiple screenpositions. One sliding window may be used for projection of an imageonto multiple screen positions, while the other sliding window may beused for detection of previously projected multiple screen positions.

In its basic operation as described above, LID 100 is independent offrames of video in contrast to conventional projectors or other displaydevices. In LID, pixels on the projected image are refreshed not by anorderly scan, such as raster scan, but by pseudorandom scanlines. Assuch, the limitations associated with quantization/digitization, framerates, and the like, as described above, largely do not apply to LID100. For example, HDTV needs to display about 180 million dots persecond for 30 frames per second of 1920 columns, 980 rows for eachframe, and three colors per pixel. As a result, every pixels must bere-drawn because of the regular frame rates. This type of “overkill” isnecessary to suppress some of the quantization artifacts discussedabove. In contrast, LID 100 can update a pixel using a single combinedimage beam 120 if the pixel is predicted to fall on the currentscanline, avoiding the need to process/calculate pixels in regularsequence to get rid of artifacts.

Additionally, little or no calculations need be performed when there isa span of non-changing image value covering multiple screen positions oranother remote surface/object positions. For example, for a solidbackground color the value of the image beam corresponding to screenpositions falling within the solid background need be calculated onceand used tens, hundreds, or thousands of times during one or morescanline sweeps. Human visual system is persistent in some respects,holding a perceived brightness or color value for a small span of time,on the order of a few microseconds. Additionally, the human visualsystem may integrate successive values of a pixel over time provided therefresh rate is beyond human visual perception. The result of suchintegration may be a perceived as a color different from all of thesuccessively integrated values of the pixel over time. There is noconcept of frame involved in the LID, even though a sequence of imageframes may also be displayed using the LID like any sequence of images.

In one embodiment, the expected reflection of the image on the screen oranother remote surface/object at a particular position may be comparedto the actual reflection value (for example, returned color intensity ofeach color of the projection beam colors). A difference between anexpected beam reflection value at each position and the actualreflection value at the same position is an indication of thereflection/absorption response of the screen or another remotesurface/object. Thus, images prior to projection may be observed andacted upon during and after pseudo random scanning.

In one embodiment, the difference between the expected and the actualreflection values may be used when on-screen, location-specificreferences are required that allow the LID to align and match itsprojection with great color and spatial accuracy to a predeterminedlocation, color, or pattern. Thus, the projected image might complement,or alternatively mask, a reflected image. For example, a screenartifact, such as a user-interface component embedded in the screen,like a microphone or a camera lens, or a non-uniform screen area may bedetected. Based on such detection, the LID may adjust the projectedimage to avoid projecting the image on such screen artifacts. Thisfeature may be useful in a video conferencing session, where theprojected image of a first party in the conference needs to be properlyaligned with the camera aperture embedded in the screen (which may beconsidered as a small irregularity in the screen surface) so that anobserving second party to the video conferencing session looks directlyat where the first party is looking, that is, straight into his/hereyes. If this embodiment is implemented on both sides in the videoconference, the gazes and observed facial perspectives of both partiesmay be properly and mutually aligned. This feature enables a life-likeand natural eye-to-eye contact, greatly facilitating communicationbetween humans. In addition, due to the ability of the scanner to detectthe lens aperture accurately, the sweeping projection beam can bespatially masked and can be synchronized with the shutter interval ofthe camera so that the camera is not blinded by the projected image.

In another embodiment, the projected image may be aligned with theprojection surface, for example, in a situation where the projectionsurface is in motion with respect to the projector or the viewer, andthe projected image needs to be angularly and/or spatially adjusted, forexample, by rotation, translation, and/or scaling, to match the movingprojection surface. The LID may have high scanline projection speeds,for example about 10,000 feet per second (fps). At high projectionspeeds, such image adjustments may be made faster than the human eye candetect. In this embodiment, the RSPT may create an image that seemsphysically attached to the moving projection surface. One application ofthis embodiment might be the projection of advertising on movingvehicles or objects. Another application that may require precisecontrol is an electronic dashboard display where it is desirable toalign the projected image accurately with the moving/vibrating controlsurface, particularly if that surface has an active (for example,emissive or reflective) display that needs to be complemented by theprojected image. For example, in traffic control or mission control,projecting real time flight or vehicular information on a terrain mapmay be possible using this embodiment.

In yet another embodiment, a white board or other collaborative surfacemay be used as a screen for the LID, where written, printed, orprojected images may be annotated with real, for example, erasablemarkers. The annotations or other markings may be superimposed on aknown image that is projected onto the white board. Such markings maythen be scanned in by the LID, so the markings can be added in real-timeto the image or document being projected onto the collaborative surface,and/or stored for later use or further modification. In one embodiment,the detector in LID, for example detector 112 (see FIG. 1), may includea detection camera that can detect an image on the screen in addition todetecting the tracer beam pulses. In this embodiment, the differencebetween the known image projected by the LID and the reflected imagethat is read back, or detected, by the detection camera may be used todetermine if any additional images, such as text, lines, or physicalobjects like a hand or a pointer, and the like, have been projected orotherwise marked on the screen and superimposed on the known image. Forexample, if an image of a drawing is projected on a white board and auser writes a number or text, for example, using a physical marker, onthe white board, the detection camera may detect the difference betweenthe drawing before and after the text was written by the user.Subsequently, the projected drawing may be augmented with the textwritten by the user on the same spot that the user wrote. In oneembodiment, this augmentation may be done in real-time and substantiallyimmediately. In another embodiment, the augmentation may be done laterafter storage of the detected differences.

This embodiment may be particularly useful in cases where themodifications on a real white board need to be available in real-time inmultiple locations in a collaborative setting. During a collaborationsession, an image, such as a system diagram, may be projected on aregular white board at multiple locations using the LID. Anymodifications made to the projected diagram at any one of the locationsparticipating in the collaboration session may be seen at allparticipating locations. In another embodiment, the LID may be a rearprojection system. In this embodiment, when using a “dry erase” markeron a translucent screen, the LID may detect, from behind the screen, theink left by the “dry erase” marker. In another embodiment, a physicalobject, for example, a pointing device, such as a stick or a finger, maybe detected by the LID and used to augment the projected image. Forexample, if a participant at one location uses a stick to point to afeature on the projected image, other participants at other locationswill see an augmented image including the pointer pointing to the samefeature on the image. Similarly, in an immersive video game or a virtualreality (VR) environment, or Mixed Reality (MR) environment, physicalobjects, such as chairs, tables, avatars, player characters, and thelike may be integrated into the scene, adding to the realism by makingthe VR experience more consistent with reality.

Those skilled in the art will appreciate that the same functionalitiesdescribed above for LID 100 may be implemented using other arrangementsof components without departing from the spirit of the presentdisclosures. For example, although LID 100 is shown and discussed withrespect to a front projection arrangement, where the projected image isviewed by a user as reflected off screen 114, substantially the sameconcepts, components, and methods may be used for a rear projectionarrangement, where the projected image is viewed on the other side ofscreen 114 via light transmission.

Illustrative Computing Device Environment

FIG. 2 shows one embodiment of computing device 200 that may be includedin a system using LID 100. Computing device 200 may include many more orless components than those shown in FIG. 2. However, the componentsshown are sufficient to disclose an embodiment for practicing thepresent invention.

As shown in the figure, computing device 200 includes a processing unit(CPU) 222 in communication with a mass memory 230 via a bus 224.Computing device 200 also includes a power supply 226, one or morenetwork interfaces 250, an audio interface 252 that may be configured toreceive an audio input as well as to provide an audio output, a display254, a keypad 256, a light source driver interface 258, a videointerface 259, an input/output interface 260, a detector interface 262,and a global positioning systems (GPS) receiver 264. Power supply 226provides power to computing device 200. A rechargeable ornon-rechargeable battery may be used to provide power. The power mayalso be provided by an external power source, such as an AC adapter or apowered docking cradle that supplements and/or recharges a battery. Inone embodiment, CPU 222 may be used as high performance processor 116for processing feedback and timing information of LID 100, as describedabove with respect to FIG. 1. In another embodiment, CPU 222 may operateindependently of processor 116. In yet another embodiment, CPU 222 maywork in collaboration with processor 116, performing a portion of theprocessing used for the operation of LID 100.

Network interface 250 includes circuitry for coupling computing device200 to one or more networks, and is constructed for use with one or morecommunication protocols and technologies including, but not limited to,global system for mobile communication (GSM), code division multipleaccess (CDMA), time division multiple access (TDMA), user datagramprotocol (UDP), transmission control protocol/Internet protocol(TCP/IP), SMS, general packet radio service (GPRS), WAP, ultra wide band(UWB), IEEE 802.16 Worldwide Interoperability for Microwave Access(WiMax), SIP/RTP, Bluetooth, Wi-Fi, Zigbee, UMTS, HSDPA, WCDMA, WEDGE,or any of a variety of other wired and/or wireless communicationprotocols. Network interface 250 is sometimes known as a transceiver,transceiving device, or network interface card (NIC).

Audio interface 252 is arranged to produce and receive audio signalssuch as the sound of a human voice. For example, audio interface 252 maybe coupled to a speaker and microphone (not shown) to enabletelecommunication with others and/or generate an audio acknowledgementfor some action.

Display 254 may be a CRT, a liquid crystal display (LCD), gas plasma,light emitting diode (LED), or any other type of display used with acomputing device. Display 254 may also include a touch sensitive screenarranged to receive input from an object such as a stylus or a digitfrom a human hand. LID 100 may replace display 254 or work inconjunction with display 254. For example, if display 254 is an outputor write-only device, that is, an output device that displaysinformation but does not take input from the user, then LID 100 mayreplace display 254. However, if display 254 is an input/output deviceor read/write device, then LID 100 may work in conjunction with display254. LID 100 may display the output information while display 254 maytake user input, for example, as a touch-screen display. This way, auser can view high quality output using LID 100 while inputtinginformation via the touch-screen display 254, which may additionallyoutput the same information viewed on LID 100. In another embodiment,described more fully below with respect to FIGS. 5 and 6, the feedbackprovided by LID 100 may be used to detect user input in 3-D, integratesuch input into the image being displayed, and project the integratedimage onto the screen 114 in real time. This embodiment reduces oreliminates the need for display 254.

Keypad 256 may comprise any input device arranged to receive input froma user. For example, keypad 256 may include a push button numeric dial,or a keyboard. Keypad 256 may also include command buttons that areassociated with selecting and sending images.

In one embodiment, a light source driver interface 258 may providesignal interface with the light source driver 102. Light source driverinterface 258 may be used to provide modulation and timing controlinformation to light source driver 102. For example, if CPU 222 is usedas processor 116 for processing feedback and timing information of LID100, then light source driver interface 258 may be used to deliver imagecontrol 124 and timing information 126 to light source driver 102.

Video interface 259 may generally be used for providing signals of aparticular type and/or formatting images for display on a particulartype of display device 254. For example, if display 254 is a raster typedevice, such as a CRT, then video interface 259 provides the appropriatesignal timing, voltage levels, H-sync, V-sync, and the like to enablethe image to be displayed on display 254. If display 254 is LID, thevideo interface 259 may implement some or all of the components shown inFIG. 1 to enable an image to be displayed using LID 100.

Computing device 200 may also include input/output interface 260 forcommunicating with external devices, such as a headset, or other inputor output devices not shown in FIG. 2. Input/output interface 260 canutilize one or more communication technologies, such as USB, infrared,Bluetooth™, or the like.

In one embodiment, detector interface 262 may be used to collect timingand screen, remote surface/object position information from detector 112and passing such information on to processor 116 and/or CPU 222 forfurther processing. In another embodiment, detector interface 262 may beintegrated with video interface to 259 as one unit. In yet anotherembodiment, detector interface 262 may be external to computing device200 and be part of an integrated external LID unit.

GPS transceiver 264 can determine the physical coordinates of computingdevice 200 on the surface of the Earth, which typically outputs alocation as latitude and longitude values. GPS transceiver 264 can alsoemploy other geo-positioning mechanisms, including, but not limited to,triangulation, assisted GPS (AGPS), E-OTD, CI, SAI, ETA, BSS or thelike, to further determine the physical location of computing device 200on the surface of the Earth. It is understood that under differentconditions, GPS transceiver 264 can determine a physical location withinmillimeters for computing device 200; and in other cases, the determinedphysical location may be less precise, such as within a meter orsignificantly greater distances. In one embodiment, however, mobiledevice may through other components, provide other information that maybe employed to determine a physical location of the device, includingfor example, a MAC address, IP address, or the like.

Mass memory 230 includes a RAM 232, a ROM 234, and other storage means.Mass memory 230 illustrates another example of computer storage mediafor storage of information such as computer readable instructions, datastructures, program modules or other data. Mass memory 230 stores abasic input/output system (“BIOS”) 240 for controlling low-leveloperation of computing device 200. The mass memory also stores anoperating system 241 for controlling the operation of computing device200. It will be appreciated that this component may include a generalpurpose operating system such as a version of UNIX, or LINUX™, or aspecialized computing communication operating system such as WindowsMobile™, or the Symbian® operating system. The operating system mayinclude, or interface with a Java virtual machine module that enablescontrol of hardware components and/or operating system operations viaJava application programs. In one embodiment, mass memory 232 may beused as memory 118, for holding an image to be displayed using LID 100,coupled with processor 116 and/or CPU 222.

Memory 230 may further include one or more data storage 244, which canbe utilized by computing device 200 to store, among other things,applications 242 and/or other data. For example, data storage 244 mayalso be employed to store information that describes variouscapabilities of computing device 200, a device identifier, and the like.The information may then be provided to another device based on any of avariety of events, including being sent as part of a header during acommunication, sent upon request, or the like.

Applications 242 may include computer executable instructions which,when executed by computing device 200, transmit, receive, and/orotherwise process messages (e.g., SMS, MMS, IMS, IM, email, and/or othermessages), audio, video, and enable telecommunication with another userof another computing device. Other examples of application programsinclude calendars, browsers, email clients, IM applications, VOIPapplications, contact managers, task managers, database programs, wordprocessing programs, security applications, spreadsheet programs, games,search programs, and so forth. Applications 242 may further includeimage processor 243, beam trajectory processor 245, and detectorprocessor 247.

In one embodiment, image processor 243 is a software component that mayperform functions associated with processing digital images for displayusing LID 100. For example, image processor 243 may used to fetch animage to display using LID 100 from memory 118. In one embodiment, imageprocessor 243 works in collaboration with other components, such asvideo interface 259, detector interface 262, beam trajectory processor245, and detector processor 247. Additionally, image processor 243 maybe used to perform digital image processing operations on the imagefetched from memory 118. For example, image processor 243 may use anadjustment coefficients matrix to adjust each color component of eachimage pixel of the image in memory 118 before using LID 100 to displaythe image. In one embodiment multiple adjustment coefficients matricesmay be used to adjust different image parameters. For example, onematrix may be used to adjust brightness, while another matrix may beused to adjust saturation when using HSB color space. In one embodiment,RGB color representation may be converted to HSB, be adjusted accordingto the appropriate coefficient matrices, and converted back to RGB formodulation.

Those skilled in the art will appreciate that there are many imageprocessing operations that may be performed on an image beforedisplaying the image. For example, various filtering operations may beperformed on the image to filter out noise, sharpen edges, and improvecontrast. Such image processing operations may be based on the timing oftracer beam 122 pulses, the detected view angle of a viewer, the textureof screen 114, and the like.

Beam Trajectory Processor (BTP) 245 is used to process information aboutthe pseudo-random scanline trajectory based on tracer beam pulses 122.BTP 245 may work in cooperation with image processor 243 to estimate thenext screen position for projecting the image. In one embodiment, BTP245 collect data about N successive tracer beam 122 pulses from acurrent scanline being scanned by scanner 110. Next, BTP 245 uses the Nsuccessive pulses to estimate the next M display screen positions on thecurrent scanline. For example, BTP 245 may use numerical methods to fita curve through the [X, Y] positions of the N successive pulses andestimate/predict the next M display screen positions on the currentscanline. Those skilled in the relevant arts will appreciate that thereare many numerical methods that may be used for this application. Forexample, least squares curve fit may be used to minimize curve fiterrors. Subsequently, image processor 243 fetches image pixels frommemory at 118, corresponding to the M display positions on the currentscanline.

In one embodiment, the screen position estimation/prediction processdescribed above may be repeated for each tracer beam 122 pulse that isdetected by detector 112. In effect, a sliding window type algorithm maybe used to continuously and accurately estimate and update the predictedposition of the next screen position before the scanline actuallycrosses the predicted screen position. In this embodiment, the width ofthe sliding window is the N screen positions.

In one embodiment, detector processor 247 may work in collaboration withdetector interface 262 to collect and preprocess data for tracer beam122 pulses before providing such data to BTP 245 for trajectoryestimations. Those skilled in the relevant arts will appreciate thatimage processor 243, BTP 245, and detector processor 247 may beintegrated into one component. Similarly, the functions performed byeach of these components may be decomposed and distributed over othercomponents, software or hardware, of computing device 200.

Those skilled in the relevant arts will appreciate that some of thecomponents described above with respect to FIG. 2, for example, beamtrajectory processor 245, image processor 243, and detector processor247, may be integrated together in a single more comprehensive componentthat performs the functions of the individual components described.Conversely, some of the components may be decomposed and distributedover multiple smaller components with more focused functions.Additionally, some of the components described above may be implementedin hardware, software, firmware, or a combination of these.

Generalized System Operation

FIG. 3 shows one embodiment of LID 100 control subsystem. The controlsubsystem takes feedback information from detector 112, processes thefeedback information in conjunction with image data stored in memory118, and provides control information to light source driver 102. In oneembodiment, the control subsystem includes a timing control 304outputting a tracer beam timing and/or frequency control signal, t_(s),and another reference timing signal, t_(ref), to an intensity controlcomponent 302. The intensity control component 302 provides modulationcontrol signals 308 for modulating component image beams generated bylight sources 104.

In one embodiment, timing control component 304 is implemented as partof BTP 245 and/or a detector processor 247. In another embodiment,timing control component 304 is implemented as a separate hardwarecircuit that may interface with detector interface 262. Similarly, inone embodiment, intensity control component 302 may be implemented aspart of image processor 243. In another embodiment, intensity controlcomponent 302 may be implemented as an independent component that iscoupled with image processor 243.

In one embodiment, timing control component 304 takes as input timinginformation to from to detector 112 and outputs tracer beam 122 timinginformation, such as t_(s) with pulse period T between pulses 306.Tracer beam 122 timing information may subsequently be used forgenerating tracer beam 122 via tracer beam generator 106. Timing controlcomponent 304 may also calculate pulse flight time by subtracting t_(s)from t₀. Pulse flight information may be used to calculate the distanceof screen 114 from scanner 110, based on which image intensity may becontrolled. Timing control 304 may also be used to vary pulse period Tand thus, vary the effective resolution of the image projected using LID100 dynamically. Dynamic, localized, real-time variation of imageresolution may be useful to adjust the displayed image on an unevensurface of screen 114. For example, if the surface of screen 114 has anedge with a sharp drop or angle, such as a wall corner with a largedrop, at a given resolution, a display pixel may fall partly on the topside of the edge and partly on the bottom side of the edge, thus,splitting and distorting the displayed pixel. However, if the displayedpixel is split into two pixels by increasing local resolutiondynamically, then instead of splitting the pixel over the edge, onepixel at appropriate intensity is projected on the top side of the edgeand another pixel and at another appropriate intensity is projected onthe bottom side of the edge.

In one embodiment, dynamic resolution adjustment in conjunction withother features of LID, such as feedback and flight time information, maybe used to project an image on several odd-shaped or angled wallssurrounding the LID for creating a visually immersive environment. Suchvisually immersive environment may be used in video games where theplayer is at the center of the room in a virtual game environment. Inone embodiment, a single LID may be used to project an image about 180°wide. In another embodiment, more than one LID may be used to project animage about 360° wide (for example, planetarium style projection),completely surrounding a viewer.

Another application of dynamic resolution control is focusing highresolution, and thus, high quality, where high resolution is neededmost. For example, an image having details of a face against a blue skybackground can benefit from the high resolution for showing facialwrinkles, hair, shadows, and the like, while the blue sky background canbe displayed at a relatively lower resolution without sacrificingquality significantly or noticeably.

In one embodiment, intensity control component 302 determines intensityof component image beams based on pixel values of the image in memory118 corresponding to the next M screen positions on the currentscanline. The intensity of each component image beam for each predictedscreen position may be further adjusted by adjustment coefficients in animage processing matrix. In one embodiment, detector 112 includes acolor camera that detects combined image beam 120 from screen 114, inaddition to detecting tracer beam 122, as another feedback signal.Detected combined image beam 120 may be used to further adjust displayedimage quality by comparing detected combined image beam 120 at eachscreen position with the corresponding image pixel in memory 118.

In one embodiment, the adjustment of the displayed image at each surfaceposition may be done over successive scan cycles, each scan cyclesweeping a new pseudorandom scanline, of the same surface position. Asscanner 110 randomly projects scanlines onto screen 114, eventually eachscreen position is scanned again in a later scan cycle, providing theopportunity to further adjust the color and intensity of the projectedimage at each surface position, or add additional detail, possiblyfilling in small spaces missed in the previous scan cycles, to sharpenor soften edges as needed. Due to the high scan rate of scanner 110,each display pixel is likely scanned and adjusted multiple times at arate that is imperceptible to a human viewer. The human visual systemintegrates successive adjustments of color and intensity into aperceived whole by averaging the color and intensity over time if suchadjustments occur fast enough for the human visual system. Thus, even ifin one scan cycle, the color and intensity of a display pixel is lessthan perfect as compared with the corresponding pixel of the image inmemory 118, for example, due to lighting and/or screen 114 surfaceimperfections, the color and intensity of the display pixel is adjustedin the next few scan cycles and integrated by human eye before the humanvision has a chance to perceive the imperfection in one cycle.

FIG. 4A shows one embodiment of pseudo random beam trajectoriesgenerated by LID 100. LID type projector 402 is used to projectpseudorandom scanlines with trajectories 404 onto screen 114. Asscanline 404 trajectories randomly cover surface of screen 114 hundredsof thousands of times a second, each screen position is scanned hundredsof times per second. Each display pixel may fall on different scanlinesduring scanning because of the pseudorandom nature of the scanlines. Forexample, a pixel 408 may fall on one scanline during one scan cycle andfall on another scanline passing through the same point in another scancycle. This is so because it is well known in basic geometry thatinfinitely many lines can pass through the same point in a plane, suchas the surface of screen 114.

As an illustrative example, consider an image 406 of a face that isdisplayed using LID 402 on screen 114. Each screen position 408 on theface 406 may fall on one or more scanlines. When screen position 408 ispredicted to be the next display position on a current scanline,processor 116 (or equivalently, image processor 243 shown in FIG. 2)fetches the corresponding pixel data from the image in memory 118. Thecorresponding pixel data from the image in memory 118 are then used tomodulate component image beams output by light sources 104 that aresubsequently combined to form combined image beam 120. Combined imagebeam 120 is reflected by scanner 110 onto screen 114 at screen position408 when the current scanline reaches screen position 408. Thisoperation is typically performed on a nano-second time scale.

For relatively large spans of uniform image portions on a pixel scale,for example, a portion of blue sky or white wall, the modulation ofcomponent image beams need not change because the same color andintensities are repeated for many contiguous pixels. ARun-Length-Limited (RLL) image coding and/or display algorithm may beused to reduce the amount of processing needed to display such images.Most graphical images, such as various pictures like sceneries,clothing, faces, and the like, have large spans of uniform image colorsand intensities at pixel level and can benefit from RLL based processingto increase efficiency. Even larger spans of uniformity may beencountered in synthetic game scenes and software application graphicssuch as desktop business applications, web pages, and the like.

FIG. 4B shows an embodiment of one pseudo random beam trajectory withscanned and predicted trajectory portions. The process of projecting animage using the LID may be divided into two distinct phases: a feedbackphase during which an already-scanned portion of scanline 404 isdetected, and a projection phase during which combined image beam 120 isprojected onto a predicted portion of scanline 404. Correspondingly,scanline 404 has two distinct portions, one, scanned beam trajectoryportion 416, and two, predicted trajectory portion 410. Scanned beamtrajectory portion 416 of scanline 404 ends at current beam position 412and includes a sequence of pulses 414, typically generated on the basisof nano-second timing. The predicted trajectory portion 410 is theportion that is predicted by processor 116 based on the data associatedwith the sequence of pulses 414. The data associated with the sequenceof pulses 414 include [X,Y] position of the display pixel on whichpulses 414 are projected, the time at which pulses 414 are detected, andthe like. In effect, pulses 414 define multiple points which specify ascanned portion 416 of scanline 404. The remaining predicted trajectoryportion 410 of scanline 404 is predicted or estimated by numericaltechniques, such as curve fits, based on the data associated with pulses414. Combined image beam 120 is generally projected on predictedtrajectory portion 410 of scanline 404.

FIG. 5 shows an embodiment of the LID of FIG. 1 depicting one image beamand tracer beam point. This embodiment includes a projector 402including a light source and optics unit 508, a detector 112 coupledwith a lens 510, ad a feedback control unit 502 outputting controlsignals 506. A combined image beam 512 is projected onto screen 114 atscreen position 408. screen position 408 is thus defined by two lightbeams in close proximity: a projection X of combined image beam 120 anda projection O of tracer beam 514. In one embodiment, the tracer beam514 includes a rapid train of IR pulses 418 projected on screen 114 asthe current scanline is swept across screen 114 with nanosecond timing.Alternatively, tracer beam 514 may be provided scanned as a continuouspattern. Also, tracer beam 514 may be scanned onto a remote surface or amoving object, e.g., vehicle in motion or a walking person or animal oreven on the rapidly moving retina in a human eye, in the case of directretinal projection (in Augmented Reality or Virtual Reality Head MountedDisplays). In one embodiment, projection O of IR pulse 418 is co-centricwith projection X of combined image beam 512. In another embodiment,projection O of IR pulse 418 is positioned side-by-side with respect toprojection X of combined image beam 512. In yet another embodiment,tracer beam 514 is a short-duration, on the order of a few nano-seconds,visible light pulse, that is imperceptible to human vision because ofits very short duration.

In one or more embodiments, the tracer beam projects a pattern on aremote surface or object (e.g a walking person or a moving vehicle),following sequentially arced patterns, preferable as “pseudo random”scan pattern of fast linear strokes, as in FIG. 4A where a tip of thelaser beam is shown to move time-sequentially, one position at onetime), and where the position of an illuminated spot created by the beamon the remote surface keeps moving progressing in an analog fashion,moving its surface position proportional with time elapsing fromnanosecond to nanosecond. In this way, a sequence of events observed bydetector(s) 112, and 113 in FIG. 1 may also result in a series ofpulses, but these pulses are detector generated, not generated by beammodulation, which causes the reflected photons of the tracer beamarriving as successive pixels (e.g. SiPM ADP pixels) are triggered insequence. The spot beam on the remote surface (or screen) is reflectedand projected onto the sensors pixelated surface. Also, as the tracerbeam moves the spot the sensor moves in step with just a few nanosecondsdelay based on the ToF distance (one nano second per foot distance).Thus, a position estimate may be generated accurately—only limited bythe accuracy in the observation of when the first photons arrive at thenext pixel in these asynchronous or twitch pixel arrays.

In one or more embodiment, tracer beam 514 may be continuously emittedat a short wavelength of 405 nanometers that may be blue/Ultra-violet incolor. However, due to the high speeds at which tracer beam 514 isscanned, the limited luminosity (luminous efficacy) of the shortwavelength blue light may be less than 1 milliLumen and thusimperceptible to the vision of most humans.

A reflection 516 of tracer beam 514 is detected by detector 112 which isgenerally positioned in close proximity to light sources and optics 508,for example, next to scanner 110 (not shown in FIG. 5). Lens 510 may beused to collect and focus an image of reflected light 516 from screen114 onto the sensor array, for example, a CCD array, of detector 112. Inone embodiment reflected light 516 also includes a reflection ofcombined image beam 512 for comparison of the displayed image with theimage in memory 118 (see FIG. 1).

In one or more embodiments, detector 112 provides feedback information,such as timing information to of a pulse 414 (see FIG. 4B), positioninformation [X, Y], and image information, such as display pixel colorand intensity data to feedback control component 502. Although not shownin FIGS. 4A and 4B, in one or more embodiments another separate detectorsuch as detector 113 as shown in FIG. 1, may be employed to provideadditional feedback information to feedback control component 502 thatmay include additional image information and additional timinginformation for pulse 414 that is employed to determine at least threedimensional information [X, Y, Z] for screen 114, one or more remotelylocated surfaces (not shown) or one or more remotely located objects(not shown) that may be stationary or moving. In one or moreembodiments, with reference to FIGS. 1 and 2, feedback control component502 is implemented as one or more of processor 116, CPU 222, detectorinterface 262, image processor 243, BTP 245, and detector processor 247.

Feedback control 502 provides control information 506 to light sourcesand optics component 508. Such control information include timinginformation t_(s), and modulation control information 308 (see FIG. 3)to control the generation of tracer beam 514 and combined image beam512, as more fully described above.

In one embodiment, with reference to FIGS. 1 and 2, light sources andoptics component 508 may be implemented as one or more of light sourcedriver 102, light sources 104, tracer beam generator 106, beam combiner108, and scanner 110.

FIG. 6A shows an embodiment of an application of the LID of FIG. 1 withdifferent user vantage points. For example, a user 604 may be atposition-1, with respect to LID 402, and later move to position-2. Inone embodiment, a head-mounted or body mounted position sensor 602 maybe used to provide feedback about the user 604's current position to LID402. In one embodiment, position sensor 602 may be a position camerathat can collect visual information, such as an area of focus of user604 or other information about the image from one or more of the screen,or a remote object (not shown). Based on feedback that LID 402 obtainsfrom detector 112 (see FIG. 1) and the feedback provided by positionsensor 602, processor 116 can calculate and adjust projected image beam606 onto screen 114 in pseudo random scan patterns, e.g., cross hatchingarcs, such that reflected beam 608 observed by user 604 provides aproper perspective of the projected image to user 604. Although notshown, in one or more embodiments position sensor 602 may employ atwitchy pixel array that provides feedback to LID 402 to automaticallydetermine at least a three-dimensional position [X, Y, Z,] plus in somecases three more dimensions, such as pitch, roll and yaw, for a head ora facial feature of each user 604.

For instance, in one or more embodiments, if LID 402 is projecting animage of a car viewed from front when user 604 is viewing screen 114from a vantage point along the direction of projection, then user 604sees a front view of the car. Now, if user 604 moves to position-1 tothe right of LID 402, then LID 402 calculates the new viewing angle forposition-1 and projects the right-side perspective of the car image foruser 604. Similarly, if user 604 moves to position-2 to the left of LID402, then LID 402 calculates the new viewing angle for position-2 andprojects the left-side perspective of the car image for user 604.Additionally, in one or more embodiments, a three or even six degrees offreedom position for detector 602 may be almost instantaneouslydetermined for each pseudo random sweeping scan with one or more ofphotogrammetry or multi view stereo metric estimation methods. Further,this position determination may be employed as a low latencysimultaneous localization and mapping method, which may be employed toproject augmentations or attach labels onto real objects, such as thehuman fingers shown in FIG. 10A.

As described for FIG. 6A, this capability is useful in immersiveapplications, for example, video games, where user perspective can bedynamically and in real-time updated and projected. Additionally, in oneembodiment, each eye can be treated as a separate point of view withdifferent left and right depth perceptions. In this case, eyewear withseparate shutters for each eye could be used to control the image viewedby each eye. Alternatively, polarization of lens in front of each eyecould be employed to control the image viewed by each eye.

FIG. 6B shows an embodiment of a LID response to different viewingperspectives. In this embodiment, an illustrative image of a vehicle isprojected by the LID onto a screen. When user 604 is at position-1, witha line of sight 624, which is substantially perpendicular to the screen,that is, substantially parallel with a center-line of projection fromthe LID to the screen, a front-view image 620 of the car isautomatically projected by the LID. The position of user 604, in thiscase, position-1, relative to the center-line of projection isdetermined by information communicated via position sensor 602 (see FIG.6A). When user 604 changes his position to position-2, with a line ofsight 626, which is at an angle with respect to the center-line ofprojection, that is, not parallel with the center-line, the LID detectsthe new position via information provided by position sensor 602.Subsequently, the LID adjusts the image of the car to project thecorrect perspective image 622 of the car on the screen, as if user 604is looking at a physical car in real world in 3-D. This embodimentenables projection of images in an immersive environment, such as videogames, virtual reality applications like moving in and around an object,car, or building, and the like.

In one or more embodiments, substantially continuous scanning beam(s)moving in pseudo-random tracer pattern on remote three dimensionalsurfaces (objects, surfaces or screens) are tracked by one or moreasynchronous sensors (e.g., twitchy pixels in linear or two dimensionalSiPM arrays, with columns and rows address labelled to detect avalancheevents emitted within less than a nano second, of light arriving at eachsuccessive pixel).

In one embodiment, the feedback and image adjustment mechanisms of LIDmay be used in an interactive virtual and/or augmented reality (VAR)system for interaction with user 604. In this embodiment, when user 604approaches a projected object on the screen, the LID may provide manyVAR capabilities, such as “zooming in,” revealing ever greater detailabout the projected object from the correct perspective, “zooming out,”“panning left/right,” “panning up/down,” handling a projected object,for example, lifting or pushing, and most other interactions that may beperformed on a real object. Furthermore, since few or no physicalconstraints exist in a VAR system, some interactions that cannot beperformed with a physical object may be performed on a projected object.For example, user 604 may walk through a wall without breaking the wall,as light passing through glass. A “zoom factor” may determine the rateof magnification as a function of the distance between user 604 and theprojected object. User 604 may approach any object in view on thescreen. The zoom factor may depend on the relative distance and desiredrealism in the VAR system. These features may create enhanced depth &motion experience. Additionally, the scanned tracer patterns allowgeneration of a relatively exact instantaneous perspective of a remotesurface or object in six degrees of freedom (framelessly and withoutunnecessary delays or eliminating a host of artifacts introduced bydiscrete quantizations).

In one embodiment, the LID renders a scene by continuous real-timeadjustments of the projected image by referencing the image as viewedthrough a position camera aligned with the viewer's perspective, asdescribed above with respect to FIGS. 6A and 6B. In one embodiment, theposition camera may be focused on a field of view within the screen,representing a focus area of the viewer/user. For example, if the screenhas the image of a football match, and the position camera is focused ona subarea of the screen, where the ball is located, then that subarea isthe field of view. In one embodiment, the position camera may be mountedon goggles such that the direction of the gaze of the viewer/userdetermines the field of view seen by the position camera, which issubsequently fed back to the LID.

The position feedback and independence of quantization enables the LIDto render objects in great detail, relatively unconstrained by any fixedresolution. The SiPM type pixels enable observation to be performedprecisely in fractions of a nanosecond. In contrast, quantizationemploys frames that are snapshots, taken over 10 milliseconds (100 fpse.g.). The frames and their corresponding pixels are relatively coarsedimensional reductive lossy quantizations (forcing reality, bestdescribed in REAL numbers) into integer values. However, twitchy pixelarrays that employ t SiPMs can measure time in a 10 millionth fractionof the 10 millisecond frame interval, thus using this 10 million timesmore accurate time measurement to estimate the three dimensional spatialposition of an edge of moving objects, such as fingers, pedestrians, orvehicles.

By concentrating the graphics subsystem computational resources, such asmemory and processing power, on the rendering of graphics polygonsdescribing the projected object, more detailed objects may be rendered.The system resources are more efficiently used because the field of viewmay be rendered with greater detail than a peripheral field, while stilla sufficiently realistic peripheral vision experience is maintained. Theperipheral field may be rendered in less detail, or with greater latency(for example, due to a lower processing priority), conservingcomputational resources such as memory and computing bandwidth. Asdiscussed above, the distance of the viewer/user to the projectedsurface may be determined by detecting the tracer beam and determiningthe flight time of the tracer beam pulses. A total viewer distance,D_(T) to an object is the sum of a real distance, D_(R), and animaginary distance, D_(I):D_(T)=D_(R)+D_(I). D_(R) is the distance fromthe viewer (for example, the viewer's eyes) to the position on thescreen where the object is projected. D_(I) is the distance of theobject away from and behind the plane represented by the projectionsurface (for example, screen), measured along the direction of view. Forexample, in a video game or VAR environment, a game engine may controlD_(I) by the varying size, shading, and rendering of perceivable detailsappropriately. D_(T), may also be referred to as a radial distance(total perceived distance), that is the distance from the object in viewto the viewer's eye measured radially, that is, along the direction ofview. In addition to this radial distance, a correct angular perspectivemay also be determined, as discussed above.

Objects that can be rendered and viewed in different directions andangular positions may be limited by the screen geometry and the positionof the viewer. In case of a standard single rectangular projectionsurface (for example, normal front or rear projection systemconfigurations) the limiting factors are screen height and width, andthe viewing distance. If projection is done on walls surrounding theviewer, little or no geometric limitations may exist for the field ofview of the user and interactions with objects projected onto thescreen. Apart from screen limitations imposed by geometry or physicalconfiguration, the viewer, equipped with the position camera, may movefreely about the screen and approach any object in his field of view,which is usually a limited subset of, a “view cone,” within the totalpossible field of view. When the viewer approaches the screen theobjects in his view will tend to naturally increase in size because theviewer is getting closer to them. As the image on the screen getsbigger, the image also occupies a greater portion of the field of viewof the viewer. Accordingly, the viewer expects to see more details aboutthe object, just as in real world.

At this point certain problems may occur that are best illustrated withan example. In an illustrative example, the viewer is looking at astatic outdoor scene including a mountain about 10 miles away, sometrees, and some rocks. Without any image adjustments by LID, as theviewer moves closer to the screen, the distance of the viewer to anobject, for example, a tree, is reduced exactly proportionally to thereal distance traversed by the viewer towards the screen. Thus as theviewer approaches a far away object, for example, the mountain 10 mileaway in the view, the mountain will appear to come much closer than itshould. For example, if the viewer travels three feet, half the distanceof six feet from his original position to the screen, he will see themountain twice as close even though he has not actually traveled fivemiles (half the perceived distance to the mountain). Even though thischange in perceived distance is an expected artifact in a static image,it immediately tells the viewer's brain that the mountain is actuallyjust a number of pixels projected on a flat surface six feet away, andnot a real mountain 10 miles away. Thus, as the viewer comes closer tothe screen, his natural depth perception is violated by every object inthe scene, except possibly those objects that are perceived as close tothe screen in the foreground.

Additionally, without image adjustment, all objects in the projectedview may have unaltered geometric positions fixed to the projectionsurface, which is clearly not what would happen in reality. Furthermore,in the far background, the horizon does not recede, as it does in thereal world, but comes 50% closer as the viewer moves three feet. In realworld, as the user walks towards a mountain in the distance andapproaches closer objects, the angular positions of objects with respectto the viewer's field of view generally increase for all objects in theview, more for closer objects, and less for farther objects.

Furthermore, without image adjustment, details that were hard to see atsome distance, for example a tree that was 15 feet away, are still hardto see, when the viewer gets three feet closer. So, getting closer hasless effect than expected. Also, as the viewer gets closer to thescreen, serious projection and display limitations become visible due toan excessively coarse image rendering granularity and pixel pitch andother quantization artifacts that destroy the “suspension of disbelief”.

The above visual faults may be more acute in a VAR environment. Thevisual faults that result from lack of proper adjustment to theprojected image when the viewer moves with respect to the screen resultin the loss of the carefully constructed illusion, which so critical toa full immersive experience.

The LID provides the capability to properly adjust the projected images,static, dynamic, or interactive, like VAR and video game environments,with respect to the viewer's position and field of view, to provide arealistic visual experience. Continuing with the illustrative exampleabove, the viewer standing six feet away from the screen, may see in thecenter of the field of view a far away object, for example, themountain. As the viewer moves half the distance to the screen—threefeet—the system detects the viewer's motion and adjusts the screen sizeof the mountain correctly to half size, canceling the effect of theviewer moving 50% closer to the screen. The mountain is seen by theviewer as unaltered, as he would also see in real world, since themountain is still approximately 10 miles away (less three feet) but theimage is viewed from half the original distance to the screen. Withoutdetecting the viewer's position, the mountain's apparent size would havedoubled, as discussed above.

At the same time, a small bush in the foreground is left unaltered bythe LID since the viewer's motion in fact results in the real distanceto that bush being halved and the unaltered projected image should looktwice as big, at half the distance, precisely as it would if it were areal bush. Additionally, since the bush is now quite close, a systemusing the LID, for example the VAR system, allocates some extra graphicsresources to render more visible details in each leaf of the bush, andthe like, to render a closer view of the bush, since the user is nowcloser and expects to see more detail. This is made possible by thedynamic resolution control feature of the LID. Possibly, as the viewergets very close, the system may actually project a shadow of the viewerover the bush. Such rendering would further enhance the realismexperienced by the viewer. The realism is further supported by the LIDdue to substantial lack of fixed pixel size, pixel position, pixelorientation, or scan patterns. The LID may render and display allobjects in view in the natural looking detail with few or no obviousvisual artifacts. An important point to note is that the LID isindependent of a game controller, buttons, or keys to adjust the image.The LID may adjust the image automatically based on the position cameraand the field of view of the viewer.

FIG. 6C shows an embodiment of a LID projection onto a tilted screen.LID 402 may project an image onto screen 114 when centerline 650 ofprojection is substantially perpendicular to the surface of screen 114.In this configuration, symmetrical projection lines 642 and 644 aresubstantially equal in length due to the symmetry of projection withrespect to screen 114. In one embodiment, LID 402 may project the imageonto screen 640 having an angle not perpendicular to centerline 650. Inthis configuration, asymmetrical projection lines 646 and 648 aresubstantially different in length due to the asymmetrical configurationof screen 640 with respect to LID 402. Because asymmetrical projectionlines 646 and 648 have different lengths, the flight time of tracer beampulses 418 (see FIG. 4B) will be different when the tracer beam isprojected along the asymmetrical projection line 646 than when thetracer beam is projected along the asymmetrical projection line 648.This difference in flight time may be detected by the LID and used toadjust the projected image and avoid image distortion due to a“stretching” effect of a tilted screen.

The stretching effect is caused by geometric projection of a linesegment onto a plane having an angle α with respect to the line segment.The length of the projected line segment, L_(p)=L/Cos α, where L is thelength of the line segment. In this case, L_(p)>L, causing thestretching of the line segment. Similarly, any other shape projected ona tilted screen is also stretched by the same factor of 1/Cos α. Thesame adjustments done for tilted screen 640 may be applied to aprojection surface with small surface irregularities and/or angles, suchas a fabric with wrinkles or angled walls, in a piece-wise fashion. Thisability of LID to use the tracer beam feedback and automatically adjustthe projected image in real-time enables projection of images ontouneven and irregular surfaces with substantially reduced or eliminateddistortions.

FIG. 7A shows an embodiment of a mobile device with an embedded LID.Mobile device 702 may be any of a variety of mobile computing devices,such as mobile phones, PDA's, laptop PC's, and the like. The operationof LID is similar to that described above. Because LID technology issmall by nature, using miniaturized solid state components such as LEDlight sources 104, MEMS (Micro Electronic and Mechanical Systems), suchas scanner 110 (see FIG. 1), processor 116, and the like, and the actualscreen, such as screen 114, where the image is projected is generallyexternal to LID 100, LID is suitable for housing in small physicalcomputing devices with little or no loss of screen size and/or displayedimage quality. One limitation of small mobile computing devices isavailability of sufficient power to run light sources for high intensityprojection. In one embodiment, an AC power adapter may be used toprovide additional electrical power for brighter or longer durationprojections using mobile device 702. Software applications that needhigh quality GUI on modern mobile devices and can benefit from the LIDtechnology include electronic mail (e-mail), video games, mobile webpages, and the like. The outputs of such software applications may bedisplayed using a LID as a projected image 704, instead of using thegenerally small and low resolution screens available on such devices.

FIG. 7B shows another embodiment of a mobile device with an embedded LIDand a head-mounted position sensor. In one embodiment, position sensor602, shown in FIG. 6, may be implemented as an ear-mounted device thatcommunicates wirelessly with the LID embedded in mobile computing device702 to provide wireless position feedback 708 to the LID, as describedabove with respect to FIG. 6. Displayed image perspective is adjusted asuser 604 moves around with respect to screen 114 and/or mobile device702 when set in a stationary position.

FIG. 8A shows a flow diagram of one embodiment of a high level processof generating an image using a LID. The process starts at block 880 andproceeds to block 882 where a tracer beam is projected onto a projectionscreen along a pseudorandom scanline trajectory. As described above, thetracer beam may include intense, short-duration light pulses, such as IRpulses, that may be imperceptible to human vision but may be easilydetected by a detector. The process moves to block 886.

At block 886, the tracer beam is detected. Various detection schemes maybe used that detect the screen position of each pulse on thepseudorandom scanline, such as 2-D CCD arrays, beam-folding opticaldetectors, and the like. Several screen positions corresponding to thetracer beam pulses are detected. In one embodiment, a sliding windowwith a width of N screen positions may be used to detect the tracerbeam. The N screen positions may subsequently be used to predict thetrajectory of the scanline. The process proceeds to block 888.

At block 888, a portion of the scanline trajectory that is not yetprojected by the LID is predicted based on the N screen positionsdetected at block 886. For example, a curve fit algorithm may be used toextrapolate and determine the next M screen positions on the scanline.The process proceeds onto block 890.

At block 890, stored image pixels or generated graphics corresponding tothe next M screen positions are obtained from an image source, such asfrom memory coupled with the LID. The correspondence of image pixelswith the next M screen positions are not necessarily one-to-one. Forexample, one image pixel may cover and correspond to multiple screenpositions, depending on the resolution of the image to be displayed. Theobtained image is then projected by the LID onto one or more of the Mscreen positions. In one embodiment, the next M screen positions aredetermined on a continuous basis, for example, using another slidingwindow with a width of M. The process terminates at block 892.Additional process details are described below with respect to FIG. 8B.

FIG. 8B shows a flow diagram of one embodiment of a process ofgenerating an image with the LID of FIG. 1. With reference to FIGS. 1and 8, the overall process of generating an image using a LID starts atblock 800 and proceeds to block 805 where tracer beam 122 pulses areprojected onto screen 114. As discussed above, tracer beam 122 may be IRpulses that are projected in parallel with combined image beam 120 ontoscreen 114 and subsequently detected by detector 112. Tracer beam 122 isused to predict the next screen position on the current scan line beingswept across screen 114 by scanner 110. The process proceeds to block810.

At block 810, detector 112 is used to detect tracer beam 122 pulses, andprovide the raw data and/or preprocessed data associated with the pulsesto processor 116. In one embodiment, a sliding window algorithm isutilized to collected data about the N preceding pulses correspondingwith the N preceding screen positions. The process proceeds to block815.

At block 815, processor 116 calculates the trajectory of the currentscan line to predict and/or estimate the next screen position on thecurrent scanline for display of image pixel from memory 118. In oneembodiment, next M screen positions are predicted based on the Npreceding tracer beam 122 pulses on the current scanline. In oneembodiment, the determination/prediction of the next M screen positionsis repeated for each of the M pixels as the current scanline sweepcontinues by the scanner 110, thus implementing a sliding windowalgorithm both at the feedback end where data are collected about Npreceding pulses and at the prediction end where M next screen positionsare predicted. The sliding window at the feedback end is N pulses widewhile the sliding window at the prediction end is M pixels wide. Theprocess moves on to decision block 820.

At decision block 820, the process determines whether adjustmentcoefficients are updated and whether pixel color values, such asintensity or saturation, need adjustment before display. If so, theprocess proceeds to block 825 where the pixel values obtained frommemory 118 are adjusted using the adjustment coefficients beforeproceeding to block 830. Otherwise, the process proceeds directly toblock 830.

At block 830, the next M screen positions on the current scanline aredetermined. As noted above, in one embodiment, the next M screenpositions are predicted based on dual sliding windows, one at thefeedback end where data about preceding N screen positions arecollected, and one at the prediction end where each of the next M screenpositions are determined based on the data collected about the precedingN screen positions. The process proceeds to block 835.

At block 835, component image beams outputted by light sources 104 aremodulated according to the corresponding values of color components ofthe pixels of image in memory 118, where the pixels correspond to thenext screen position on the current scanline predicted at block 830. Forexample, the intensity of the R (Red) component image beam may be set tothe red component value of the image in memory 118 for the pixel to bedisplayed next on the current scanline. The process proceeds to block840.

At block 840, the component image beams, for example, RGB components,are combined together to form one combined image beam 120. In oneembodiment, a prism may be used to combine the component image beam. Inother embodiments other methods currently known in the art or methods tobe discovered in the future may be used to combine the component imagebeams. The process proceeds to block 845.

At block 845, a scanner 110, for example a MEMS device with a rotatingmirror with two degrees of rotational freedom, for example, twoorthogonal planes of rotation, reflects the combined image beam 120 aspseudorandom scanlines sweeping across screen 114. Different methods maybe used to inject randomness into the direction of the scanlines fromone scan cycle to the next. These methods range from mechanical andphysical means, such as imprecisely controlled off-center vibrations atmicroscopic level, to electronic and software means, such as randomnumber generators. The process proceeds to block 850.

At block 850, detector 112 or another image detection camera optionallydetects the reflection of combined image beam 120 from screen 114. Inone embodiment, combined image beam 120 is scattered off screen 114 andis refocused onto detector 112, or the other image detection camera,using a lens 510 (see FIG. 5). Data collected about projected pixelvalues and positions are used to improve the projected pixel values (theimage) on the next scan cycle. The process proceeds to decision block855.

At decision block 855, the data collected about projected pixel valuesare compared with the corresponding pixel value of the image stored inmemory 118 to determine any deviations. If any deviations are detected,for example, because of screen 114 color or texture, adjustmentcoefficients for the pixel values of the image in memory 118 are updatedat block 860 to adjust such pixel values for the next scan cycle.Otherwise, the process proceeds to block 805 and the process is repeatedfor the next screen position on the current scanline. As one scanline iscompleted, another scanline is started and the same process describedabove is repeated with respect to the new scanline.

High Resolution Scanning

With high (super) resolution scanning of remote surfaces, objects ofinterest may be cropped and highlighted to accelerate perception ofthese objects, such as those that may be located on a roadway in frontof a vehicle. In this way, vehicular collision avoidance agility may beimproved and fast steering responsiveness for the vehicle may beprovided. Further, one or more image projection devices may be employedto scan the surface of a road in front of a vehicle (FIG. 6B).

In one or more embodiments, perception of objects may be improved whenthe road surface is smooth, without strong sharp edges or structuraledge features. Or the road surface coating is uniform providing noobvious image contrast fiducials, and there are no markings that camerascan get “a grip on”. Perhaps a light snow has fallen or a storm hascaused just enough snow/dust to cover up any remaining markings on theroad surface.

Alternatively, in one or more embodiments, perception of objects may beimproved when there are particularly low diffuse light conditions, e.g.,winter evening with mist or fog diffusing the available light sources,and/or a low in the sky winter sun, moon light or street lights. Or evenworse, the vehicle's headlights are absorbed, scattered andretro-reflected by snow, dust, mist droplets, or rain drops. Further, inone or more embodiments, when a small child, in a white winter coat, awhite snow hare, or a pet bunny or other so-called “vulnerable roadusers” (“VRUs”) cross a road on a dark winter evening, their presence inthe path of an oncoming vehicle may not be detected by the typical typeof camera used in vision systems for many popular electrically poweredvehicles. A VRU may be a person using a road that is not protected by acar chassis or frame, animal pets, pedestrians, bicyclists, and thelike. Also, a VRU may be classified as an object based on one or more ofa shape, silhouette, motion, or the like.

However, when scanning beams are emanating from a vehicle, a new classof novel “VRU-safe” vehicle, such scanning beams can sharply delineatethe outlines of VRUs on the road surface. The sweeping beams canimmediately detect the outlines of VRUs. Sweeping across the road withinthe first 3 to 6 feet directly above the road surface the laser beam'sleading edge would detect immediately the left and right edge of any VRUcrossing the roads. See FIGS. 9A, 9B, 9C, 9D and 9E.

VRU Detection System

In one or more embodiment, when the scanning beam of light, such as aspot, is sweeping the road surface ahead of a vehicle with a rate of10,000 sweeps per second, which might be done with scanning systems witha 5 kHz resonant scan mirror. In such a VRU system, left to right scansof the beam might alternate between right to left scans. Also, if a fullfield of view (FoV) of the VRU detection is approx. 50 degrees, then thebeams sweeping across this FoV may take approximately 100 microseconds.Also, if a twitchy pixel sensor array includes 1,000 columns, a singlereflection of the fast sweeping projected spot beam would cross anindividual pixel in the array in approximately 100 nanosecond (100 microseconds/1000=100 ns). At a distance of 10 meters, the spot beams' motionwould sweep across an approximately 10 meters wide FoV (acrossapproximately 3 lanes of traffic) at a rate of 1 centimeter (one pixel,1/1000th of the 50 degree FoV) per 100 nanoseconds or 1/20^(th) of amillimeter per nanosecond. However, when the beam's leading edgeimpinges on the VRU edge, the first reflected photons would arrive atleast at one of the pixels of at least one of the twitchy pixel arraysin approx. 30 nanoseconds (ToF of 10 meters or 30 feet), and the firstavalanche would signify/indicate that a close object is crossing theroad within the reach of the sweeping spot beam of laser light. Thisindication may occur within a millisecond, and in some cases within 1/10of a millisecond. Note that when the arrivals of the first photons aredetected with a temporal resolution of a nanosecond, which is quite easyin the latest SiPM pixel array technologies, then it follows, e.g., inthe above example that at a distance of 10 meters ahead of a vehicle (ora robot driver) edges of the VRU can be located to the precision ofsingle millimeter, if desired, which is very significantly beyond theabilities of other sensing systems (such as Cameras and light detectionand ranging systems—LIDARS), and is well beyond the acuity of humanvision.

In one or more embodiments, an image projection device for scanned(sweeping) laser spot beams of laser light may be configured to scan atleast 10 lines across the FoV in a single millisecond. Also, thehorizontal scan lines could be arranged to be 10 centimeters apart andthus detect any object greater that 10 centimeters within 1 meter abovea surface of a road in front of a vehicle.

In one or more embodiments, scanning an individual point of laser light(spot) the image projection device may be arranged to scan 10 or morepoints of laser light across the FoV. As long as the points of light aresuitably off set from each other by a twitchy pixel array receiver(s),trajectory estimation can quickly track impinging on edges of andprogression of the individual points (spot beams) across a remote objectsuch as the VRU. Also, in one or more embodiments, if a VRU detectionsystem employs 10 or more spot beams of laser light simultaneouslyreflecting off the same scan mirror surface (polygonal, mems, galvanic,or the like) then a scan rate of one sweep across the FoV in onemillisecond might be sufficient, thereby enabling a 10 times slower scanrate of 1 kHz (500 Hz back and forth and scan velocity across the same1000 twitchy pixel columns, at “cadence” or a temporal pitch ofapproximately 1,000 nano seconds per column.

In one or more embodiments, the VRU detection system may provide highlyprecise edge detection for locating spatial edges (unmarked walls,corners, pillar and posts). The system can enable detection of a highly(super) resolved and ultra-low latency position, which can be used indetermining a location in a six degrees of freedom (DoF) environment,e.g., the system may provide ultra-fast (laser fast) visual angularreckoning (to one 1/100th degree in 3 key rotational degrees of freedom.The VRU detection system can enable flying drones, e.g., Quadcopters, tofly fast in small spaces, as it enables them to instantly detectotherwise hard to detect remote objects, such as small feature objects(birds and wires). The VRU detection system also provides forstabilizing and anchoring augmentation such as feature high lights orlabels on real world objects in the FoV of a user, particularly whenoperating a headset in unstable and challenging inertial environments,such as any athletic activity, such as walking, running, swimming, orthe like, or traveling by any type of vehicle, e.g., buses, trains,subways, boats, airplanes, helicopters, motorcycles, cars, or the like.

FIG. 9A illustrates light transmitter Tx emitting a fast sweepingscanning beam (FSSB) sweeping (arrow) in a FoV and the sweeping beamimpinges on the left edge at point L of a shape ( the 3D surfacecontour) of a Vulnerable Road User (VRU). At time t, some of the beam'sphotons are reflected back to a receiver Rx, where a LENS focuses thecaptured/received photons (rays) in to a projection of R, i.e., R′. Thefirst arriving photons are detected by a twitchy pixel at time t′.

FIG. 9B shows a light transmitter Tx emitting a fast sweeping scanningbeam (FSSB) sweeping (arrow) in a FoV and the sweeping beam impinges onthe right edge at point R of the shape of a Vulnerable Road User (VRU).At time t, some of the beam's photons are reflected back to a receiverRx, where a lens (LENS) focuses the captured/received photons (rays) into a projection of R, i.e., R′. The first arriving photons are detectedby a twitchy pixel at time t′.

FIG. 9C illustrates a dual perspective (stereo) VRU detection systemwith two receivers Rxl and Rxr, and two sweeping beam scanning systemsTxl and Txr. The two beams may either operate simultaneously or inalternating fashion, e.g., each beam detects at least one edge of a VRUor other remote obstacles ahead of a vehicle.

FIG. 9D shows a vehicle V outfitted with the VRU detection system asdescribed in FIG. 9C, detecting the left L and right R contour pointsimmediately after reflected photons arrive at the Receivers Rxl and Rxr.In at least one or more embodiments, a separate forward detectionimaging system (not shown) may share the FoV with the VRU detectionsystem. The separate forward detection imaging system may employ one ormore frame synchronous high resolution camera (monochrome or color)having a pixel resolution that matches the time interpolated edgedetection resolution of the sweeping beams provided by the VRU detectionsystem.

FIG. 9E shows the VRU detection system precisely and selectively“cropping out” a pixel from a high resolution image frame produced by acamera, that is exactly and only the pixels from the foreground object,i.e., the VRU. Also, although a single high resolution camera is shown,two or more cameras can each benefit simultaneously from this croppingaction, as it enables a selective and instantaneous foveation onto theVRU. This cropping—removing the background pixels—can reduce by 90% ormore the visual data to be examined. This reduction greatly reduces theneed for pixel feature matching searches and other computationallyintense computer vision algorithms employed by vehicle anti-collisionsystems, which greatly improves system latency and path planning. Also,in one or more embodiments, typically, each millisecond before acollision counts, e.g., approximately 10⁹ Operations are saved permillisecond. Additionally, multiple perspectives provided by two or morecameras enables multiple precisely cropped images of a remote object, oralternatively multiple sequential views as a vehicle approaches anobject (possibly a VRU), which enables photogrammetry methods and visualodometry to locate and track the trajectory of the object as a vehicleapproaches the object. Further, since the edges are illuminated for lessthan a microsecond, they are not blurred so motion and the threedimensional position of the object can be tracked with extremely highmotion precision, i.e., with exact nearly instantaneous velocitydetermination. (So both Human fingers and Robot fingers can now betracked very accurately, with negligible latency.

FIGS. 10A, 10B and 10C illustrate examples of determining highly preciseedges in the near field of an Augmented Reality (AR) scan perceptionsystem. These figures show an index finger about 10 mm wide, the beamscan across at 5 KHz back and forth with a highly focused beam withminimal spot size of ¼^(th) of mm (250 microns) impinging on the fingerat moment t. Moment t is observed by a twitchy pixel sensor, e.g., asensor array of 65,536 SiPM pixels 256 columns, 256 rows, eachconfigured to alert and report an avalanche in the array. If the beamagain, as in the previous example, sweeps across a 50-degree field ofview, across 256 columns in 100 micro seconds, the 10-mm width of indexfinger spans across approximately 2.5 columns, the view “frustum” of asingle twitchy pixel being approx. 4 mm×4 mm =16 mm² per pixel at adistance of 1 m. Thus, if the user's hands and finger motion is trackedover a working surface of one square meter tiled into a raster of tiles:this working surface intersects with view frusta of 65,526“ultra-twitchy” pixels. Further, since the beam is focused, all of itsblue PhotonJet output (e.g. 2×10¹⁵ 405 nm Blu-Ray laser photons in to250 micron spot beam is focused on the fingers, or any other object inthe user's hand) the spot area on the surface fills at any time duringits scan trajectory less than 100^(th) of the “Pixel Frustum Tiles ” asprojected surface on the finger See FIG. 10A. As the leading edge ofthis highly focused beam impinges on the finger's edge, at least one ofthe cameras in the user's headset detects that event within 10nanoseconds (note it takes only 3 nanoseconds for the first reflectedphotons to reach the detector).

Additionally, in one or more embodiments, with only 256 columns acrossand a full sweep across a FoV of 256 columns in 100 microseconds, a“Natural Rhythm”, e.g., the cadence between pixel events regardless ofdistance, may be approximately 239 microseconds. Although it is unlikelythat an edge of the finger aligns with a new pixel, it is somewhatlikely to expect three events across the 10-millimeter width of afinger. For example, a first event might be approximately 3 nanosecondsafter the sweeping spot beam impinges on a finger, and two more eventsmight occur as the spot on the finger advances enough to enter the twosuccessive pixels across the finger. The exact nanosecond of the firstevent informs on a precise momentary lateral (achieving resolution, of1/10^(th) of millimeter or 100 microns with zero motion blur) positionof the finger in the path of the scanned spot beam's sweeping direction(lateral sweep direction). The next two events may constitutereflections of the spot beam from two other positions somewhere else onthe finger's contiguous surface. Note that if there are multiple fingerswith some gaps (best greater than 4 millimeter) than a succession ofsurfaces and leading edges is instantaneously detected in a single sweepof the scanned spot beam.

FIG. 10A shows an index finger as it is swept across by a fast detectionspot beam from left to right (events t1, t2 and t3) and then in thereverse direction from right to left (events at t4, t5 and t6).

FIG. 10B illustrates the case where event t1 is “out of cadence,” and itdoes not fit the expected time matching the pixel boundaries observed byt2 and t3. It is actually late in occurring, i.e. “retarded” or out ofsync events that do not fit the scan trajectory. It is likely an edge isbeing detected, when t1<<t3-t2, the latter matching the signature“cadence”, e.g., easily observed for when scanning contiguous flatsurfaces of larger objects such as walls tables or road surfaces.

FIG. 10C shows larger surfaces that reveal “cadence” of the regularspacing of the pixel grid projected onto a relatively smooth flatsurface at a distance (minimal disparity at larger distances, surfacesdo not need to flat, or of constant range as the fast scan beam arcsacross the FoV).

FIG. 11A illustrates “A falling star” (also known as “shooting star”)the back—reflected image projection of the laser beam's spot sweepingacross a remote surface crossing of the FoV of the VRU detection system.The back projected spot S′ streaks across the twitchy pixel arrayleaving a trace T→ across the twitchy pixels, as a discrete series ofevents (e.g. SiPM avalanches) in a time-sequential manner, and in apixel-sequential manner adjacent pixels “fire” (avalanche) in a fastseries that fits the Trace T→. N consecutive events are reported at timet1 t2 t3 . . . tn.

FIG. 11B shows an enlarged detail of the trajectory of the spot S′ whichcauses sequential events to occur in adjacent pixels, respectively,i.e., pixel i, j and pixel i+1, j at times t_(i) and t_(i+1).

FIG. 11C illustrates sequential events that occur at adjacent pixels ata characteristic “cadence” which if the receiver is close to thetransmitter is invariant to distance, it's only a function to the sweepspeed (rotational speed in degrees per second) and the pitch of thepixels (columns), i.e. angular resolution (number of pixels per degree).

FIG. 12A shows random noise events (0+0+0+) and true signal events(++++) occur concurrently across the twitchy pixel array. The trueevents can be sorted from the false (noise) events as only the trueevents fit the “signature trajectory” left by the fast sweep of thescanned spot beam.

FIG. 12B illustrates the signature directory might not be smooth if thereceiver Rx is offset from the transmitter (Tx) in that case as heredepicted deviations from the scan trajectory represents the disparitydirection (the disparity vector), and variations in the Z distance therange of the surface traced by the flying laser spot. Note there mightbe a plurality of sensors each with its own, different unique offset,i.e., its own fixed unique disparity direction. The laser scan motion isthe same for all observers, whereas the disparity direction is unique toeach sensor, thus by combining the observations of multiple sensors bycomputation means, the disparity (a very precise measure of range in thenear field) can be observed independent form the scan pattern motionsignature which can thus be used by all observers to filter out therandom noise. (sensor dark current and ambient).

In one or more embodiments, random noise events (0+0+0+) and true signalevents (++++) may occur concurrently across the twitchy pixel array.Also, the true events (++++) can be sorted, differentiated from thefalse (noise) events. In this way, the true events fit the signaturetrajectory left by the fast sweeping scan beam. And the time sequentialtrail of events is the signature that reveals “how the dots connect”.The events that are (likely) true events t1 t2 . . . t12, t13 are allvery close and progressive, and they advance forward at the same rate asthe scan direction, i.e. the direction where the cadence is closest toconstant.

It will be understood that each block of the flowchart illustration, andcombinations of blocks in the flowchart illustration, can be implementedby computer program instructions. These program instructions may beprovided to a processor to produce a machine, such that theinstructions, which execute on the processor, create means forimplementing the actions specified in the flowchart block or blocks. Thecomputer program instructions may be executed by a processor to cause aseries of operational steps to be performed by the processor to producea computer implemented process such that the instructions, which executeon the processor to provide steps for implementing the actions specifiedin the flowchart block or blocks. The computer program instructions mayalso cause at least some of the operational steps shown in the blocks ofthe flowchart to be performed in parallel. Moreover, some of the stepsmay also be performed across more than one processor, such as mightarise in a multi-processor computer system. In addition, one or moreblocks or combinations of blocks in the flowchart illustration may alsobe performed concurrently with other blocks or combinations of blocks,or even in a different sequence than illustrated without departing fromthe scope or spirit of the invention.

Accordingly, blocks of the flowchart illustration support combinationsof means for performing the specified actions, combinations of steps forperforming the specified actions and program instruction means forperforming the specified actions. It will also be understood that eachblock of the flowchart illustration, and combinations of blocks in theflowchart illustration, can be implemented by special purposehardware-based systems which perform the specified actions or steps, orcombinations of special purpose hardware and computer instructions.

The above specification, examples, and data provide a completedescription of the manufacture and use of the composition of theinvention. Since many embodiments of the invention can be made withoutdeparting from the spirit and scope of the invention, the inventionresides in the claims hereinafter appended.

What is claimed as new and desired to be protected by Letters Patent ofthe United States is:
 1. A system for scanning beams of light,comprising: one or more light sources; one or more sensors; a memory tostore at least instructions; and one or more processor devices thatexecute the instructions to enable performance of actions, comprising:employing the one or more light sources to pseudo randomly scan one ormore beams of light adapted for projection onto one or more remotesurfaces; and employing the one or more sensors to determine one or moremulti-dimensional positions of the one or more remote surfaces based onone or more reflections of the one or more beams of light.
 2. The systemof claim 1, further comprising: employing a sweep of the one or morelight beams in a first lateral direction and another sweep of the one ormore light beams in a second lateral direction to determine each edge ofthe one or more remote surfaces in a field of view based on the one ormore reflections of the one or more beams of light from the one or moreremote surfaces that are out of cadence.
 3. The system of claim 1,wherein employing the one or more light sources to pseudo randomly scanthe one or more beams of light, further comprises: sweeping the one ormore beams of light through a field of view in a first lateral directionand through the field of view in a second lateral direction onto the oneor more remote surfaces, wherein the first lateral direction is oppositeto the second lateral direction.
 4. The system of claim 1, furthercomprising: employing a first light source located in a first positionand a second light source that is located at a separate second positionto sweep pseudo random scans of a first beam and a second beam of lightthrough a field of view in a first lateral direction and in a secondlateral direction onto the one or more remote surfaces; and employingthe reflections of the first and second beams of light beams todetermine one or more of: two or more remote surfaces that arecontiguous in the field of view; a trajectory of movement by the one ormore remote surfaces in the field of view; or one or more edges of theone or more remote surfaces in the field of view.
 5. The system of claim1, further comprising: employing a sweep of the one or more light beamsin a first lateral direction and another sweep of the one or more lightbeams in a second lateral direction to determine a trajectory ofmovement through a field of view based on the one or more reflections ofthe one or more beams of light from the one or more remote surfaces. 6.The system of claim 1, wherein the one or more sensors further comprise:a twitchy pixel array that employs one or more Silicon Photon Multiplier(SiPM) arrays.
 7. The system of claim 1, wherein the one or more sensorsfurther comprise: determining a trajectory of one or more objects in aforeground based on reflections of the one or more light beams from theone or more objects.
 8. A method of scanning beams of light, comprising:employing one or more light sources to pseudo randomly scan one or morebeams of light adapted for projection onto one or more remote surfaces;and employing the one or more sensors to determine one or moremulti-dimensional positions of the one or more remote surfaces based onone or more reflections of the one or more beams of light.
 9. The methodof claim 8, further comprising: employing a sweep of the one or morelight beams in a first lateral direction and another sweep of the one ormore light beams in a second lateral direction to determine each edge ofthe one or more remote surfaces in a field of view based on the one ormore reflections of the one or more beams of light from the one or moreremote surfaces that are out of cadence.
 10. The method of claim 8,wherein employing the one or more light sources to pseudo randomly scanthe one or more beams of light, further comprises: sweeping the one ormore beams of light through a field of view in a first lateral directionand through the field of view in a second lateral direction onto the oneor more remote surfaces, wherein the first lateral direction is oppositeto the second lateral direction.
 11. The method of claim 8, furthercomprising: employing a first light source located in a first positionand a second light source that is located at a separate second positionto sweep pseudo random scans of a first beam and a second beam of lightthrough a field of view in a first lateral direction and in a secondlateral direction onto the one or more remote surfaces; and employingthe reflections of the first and second beams of light beams todetermine one or more of: two or more remote surfaces that arecontiguous in the field of view; a trajectory of movement by the one ormore remote surfaces in the field of view; or one or more edges of theone or more remote surfaces in the field of view.
 12. The method ofclaim 8, further comprising: employing a sweep of the one or more lightbeams in a first lateral direction and another sweep of the one or morelight beams in a second lateral direction to determine a trajectory ofmovement through a field of view based on the one or more reflections ofthe one or more beams of light from the one or more remote surfaces. 13.The method of claim 8, wherein the one or more sensors further comprise:a twitchy pixel array that employs one or more Silicon Photon Multiplier(SiPM) arrays.
 14. The method of claim 8, wherein the one or moresensors further comprise: determining a trajectory of one or moreobjects in a foreground based on reflections of the one or more lightbeams from the one or more objects.
 15. A computer readablenon-transitory media for storing instructions for scanning beams oflight, wherein one or more processor devices that execute theinstructions enable performance of actions, comprising: employing one ormore light sources to pseudo randomly scan one or more beams of lightadapted for projection onto one or more remote surfaces; and employingthe one or more sensors to determine one or more multi-dimensionalpositions of the one or more remote surfaces based on one or morereflections of the one or more beams of light.
 16. The computer readablenon-transitory storage media of claim 15, further comprising: employinga sweep of the one or more light beams in a first lateral direction andanother sweep of the one or more light beams in a second lateraldirection to determine each edge of the one or more remote surfaces in afield of view based on the one or more reflections of the one or morebeams of light from the one or more remote surfaces that are out ofcadence.
 17. The computer readable non-transitory storage media of claim15, wherein employing the one or more light sources to pseudo randomlyscan the one or more beams of light, further comprises: sweeping the oneor more beams of light through a field of view in a first lateraldirection and through the field of view in a second lateral directiononto the one or more remote surfaces, wherein the first lateraldirection is opposite to the second lateral direction.
 18. The computerreadable non-transitory storage media of claim 15, further comprising:employing a first light source located in a first position and a secondlight source that is located at a separate second position to sweeppseudo random scans of a first beam and a second beam of light through afield of view in a first lateral direction and in a second lateraldirection onto the one or more remote surfaces; and employing thereflections of the first and second beams of light beams to determineone or more of: two or more remote surfaces that are contiguous in thefield of view; a trajectory of movement by the one or more remotesurfaces in the field of view; or one or more edges of the one or moreremote surfaces in the field of view.
 19. The computer readablenon-transitory storage media of claim 15, further comprising: employinga sweep of the one or more light beams in a first lateral direction andanother sweep of the one or more light beams in a second lateraldirection to determine a trajectory of movement through a field of viewbased on the one or more reflections of the one or more beams of lightfrom the one or more remote surfaces.
 20. The computer readablenon-transitory storage media of claim 15, wherein the one or moresensors further comprise: a twitchy pixel array that employs one or moreSilicon Photon Multiplier (SiPM) arrays.